Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,58 @@
|
|||
PROGRAM "romanenc"
|
||||
VERSION "0.0000"
|
||||
|
||||
DECLARE FUNCTION Entry()
|
||||
INTERNAL FUNCTION ToRoman$(aValue%%)
|
||||
|
||||
' 3888 or MMMDCCCLXXXVIII (15 chars) is the longest string properly encoded with these symbols.
|
||||
|
||||
FUNCTION Entry()
|
||||
PRINT ToRoman$(1990) ' MCMXC
|
||||
PRINT ToRoman$(2018) ' MMXVIII
|
||||
PRINT ToRoman$(3888) ' MMMDCCCLXXXVIII
|
||||
END FUNCTION
|
||||
|
||||
FUNCTION ToRoman$(aValue%%)
|
||||
DIM weights%%[12]
|
||||
DIM symbols$[12]
|
||||
|
||||
weights%%[0] = 1000
|
||||
weights%%[1] = 900
|
||||
weights%%[2] = 500
|
||||
weights%%[3] = 400
|
||||
weights%%[4] = 100
|
||||
weights%%[5] = 90
|
||||
weights%%[6] = 50
|
||||
weights%%[7] = 40
|
||||
weights%%[8] = 10
|
||||
weights%%[9] = 9
|
||||
weights%%[10] = 5
|
||||
weights%%[11] = 4
|
||||
weights%%[12] = 1
|
||||
|
||||
symbols$[0] = "M"
|
||||
symbols$[1] = "CM"
|
||||
symbols$[2] = "D"
|
||||
symbols$[3] = "CD"
|
||||
symbols$[4] = "C"
|
||||
symbols$[5] = "XC"
|
||||
symbols$[6] = "L"
|
||||
symbols$[7] = "XL"
|
||||
symbols$[8] = "X"
|
||||
symbols$[9] = "IX"
|
||||
symbols$[10] = "V"
|
||||
symbols$[11] = "IV"
|
||||
symbols$[12] = "I"
|
||||
|
||||
destination$ = ""
|
||||
i@@ = 0
|
||||
DO WHILE (i@@ <= 12) AND (aValue%% > 0)
|
||||
DO WHILE aValue%% >= weights%%[i@@]
|
||||
destination$ = destination$ + symbols$[i@@]
|
||||
aValue%% = aValue%% - weights%%[i@@]
|
||||
LOOP
|
||||
i@@ = i@@ + 1
|
||||
LOOP
|
||||
RETURN destination$
|
||||
END FUNCTION
|
||||
END PROGRAM
|
||||
Loading…
Add table
Add a link
Reference in a new issue