Roman numerals/Decode: Difference between revisions

Content added Content deleted
(Roman numerals/Decode en True BASIC)
(Roman numerals/Decode en QBasic)
Line 5,462: Line 5,462:
MMXVIII -> 2018
MMXVIII -> 2018
MMZZIII -> (Contains unknown character)</pre>
MMZZIII -> (Contains unknown character)</pre>


=={{header|QBasic}}==
<lang QBasic>FUNCTION romToDec (roman$)
num = 0
prenum = 0
FOR i = LEN(roman$) TO 1 STEP -1
x$ = MID$(roman$, i, 1)
n = 0
IF x$ = "M" THEN n = 1000
IF x$ = "D" THEN n = 500
IF x$ = "C" THEN n = 100
IF x$ = "L" THEN n = 50
IF x$ = "X" THEN n = 10
IF x$ = "V" THEN n = 5
IF x$ = "I" THEN n = 1

IF n < preNum THEN num = num - n ELSE num = num + n
preNum = n
NEXT i

romToDec = num
END FUNCTION

!Testing
PRINT "MCMXCIX = "; romToDec("MCMXCIX") '1999
PRINT "MDCLXVI = "; romToDec("MDCLXVI") '1666
PRINT "XXV = "; romToDec("XXV") '25
PRINT "CMLIV = "; romToDec("CMLIV") '954
PRINT "MMXI = "; romToDec("MMXI") '2011</lang>


=={{header|Quackery}}==
=={{header|Quackery}}==