21 lines
579 B
Plaintext
21 lines
579 B
Plaintext
DIM SHARED arabic(0 TO 12) AS Integer => {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1 }
|
|
DIM SHARED roman(0 TO 12) AS String*2 => {"M", "CM", "D","CD", "C","XC","L","XL","X","IX","V","IV","I"}
|
|
|
|
FUNCTION toRoman(value AS Integer) AS String
|
|
DIM i AS Integer
|
|
DIM result AS String
|
|
|
|
FOR i = 0 TO 12
|
|
DO WHILE value >= arabic(i)
|
|
result = result + roman(i)
|
|
value = value - arabic(i)
|
|
LOOP
|
|
NEXT i
|
|
toRoman = result
|
|
END FUNCTION
|
|
|
|
'Testing
|
|
PRINT "2009 = "; toRoman(2009)
|
|
PRINT "1666 = "; toRoman(1666)
|
|
PRINT "3888 = "; toRoman(3888)
|