RosettaCodeData/Task/Roman-numerals-Encode/APL/roman-numerals-encode.apl

11 lines
375 B
APL
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
toRoman{
⍝ Digits and corresponding values
ds(())' M CM D CD C XC L XL X IX V IV I'
vs1000, ,100 10 1.×9 5 4 1
⍝ Input ≤ 0 is invalid
0:⎕SIGNAL 11
{ 0=dvs: ⍝ Find highest digit in number
(dds),-dvs ⍝ While one exists, add it and subtract from number
}
}