Roman numerals/Encode: Difference between revisions

Content added Content deleted
m (→‎{{header|Tailspin}}: update to stricter typing)
Line 6,816: Line 6,816:
def digits: [(M:1000"1"), (CM:900"1"), (D:500"1"), (CD:400"1"), (C:100"1"), (XC:90"1"), (L:50"1"), (XL:40"1"), (X:10"1"), (IX:9"1"), (V:5"1"), (IV:4"1"), (I:1"1")];
def digits: [(M:1000"1"), (CM:900"1"), (D:500"1"), (CD:400"1"), (C:100"1"), (XC:90"1"), (L:50"1"), (XL:40"1"), (X:10"1"), (IX:9"1"), (V:5"1"), (IV:4"1"), (I:1"1")];
templates encodeRoman
templates encodeRoman
@: 1;
@: 1"1";
'$ -> #;' !
'$ -> ($)"1" -> #;' !
when <$digits($@)::value..> do
when <$digits($@)::value..> do
$digits($@)::key !
$digits($@)::key !
$ - $digits($@)::value -> #
$ - $digits($@)::value -> #
when <1..> do
when <1"1"..> do
@:$@ + 1;
@:$@ + 1"1";
$ -> #
$ -> #
end encodeRoman
end encodeRoman