OPTION BASE 0 DIM arabic(12), roman$(12) FOR i = 0 to 12 READ arabic(i), roman$(i) NEXT i DATA 1000, "M", 900, "CM", 500, "D", 400, "CD", 100, "C", 90, "XC" DATA 50, "L", 40, "XL", 10, "X", 9, "IX", 5, "V", 4, "IV", 1, "I" FUNCTION toRoman$(value) LET result$ = "" FOR i = 0 TO 12 DO WHILE value >= arabic(i) LET result$ = result$ & roman$(i) LET value = value - arabic(i) LOOP NEXT i LET toRoman$ = result$ END FUNCTION !Testing PRINT "2009 = "; toRoman$(2009) PRINT "1666 = "; toRoman$(1666) PRINT "3888 = "; toRoman$(3888) END