Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,20 @@
|
|||
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)
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
' FB 1.05.0 Win64
|
||||
|
||||
Function romanEncode(n As Integer) As String
|
||||
If n < 1 OrElse n > 3999 Then Return "" '' can only encode numbers in range 1 to 3999
|
||||
Dim roman1(0 To 2) As String = {"MMM", "MM", "M"}
|
||||
Dim roman2(0 To 8) As String = {"CM", "DCCC", "DCC", "DC", "D", "CD", "CCC", "CC", "C"}
|
||||
Dim roman3(0 To 8) As String = {"XC", "LXXX", "LXX", "LX", "L", "XL", "XXX", "XX", "X"}
|
||||
Dim roman4(0 To 8) As String = {"IX", "VIII", "VII", "VI", "V", "IV", "III", "II", "I"}
|
||||
Dim As Integer thousands, hundreds, tens, units
|
||||
thousands = n \ 1000
|
||||
n Mod= 1000
|
||||
hundreds = n \ 100
|
||||
n Mod= 100
|
||||
tens = n \ 10
|
||||
units = n Mod 10
|
||||
Dim roman As String = ""
|
||||
If thousands > 0 Then roman += roman1(3 - thousands)
|
||||
If hundreds > 0 Then roman += roman2(9 - hundreds)
|
||||
If tens > 0 Then roman += roman3(9 - tens)
|
||||
If units > 0 Then roman += roman4(9 - units)
|
||||
Return roman
|
||||
End Function
|
||||
|
||||
Dim a(2) As Integer = {1990, 2008, 1666}
|
||||
For i As Integer = 0 To 2
|
||||
Print a(i); " => "; romanEncode(a(i))
|
||||
Next
|
||||
|
||||
Print
|
||||
Print "Press any key to quit"
|
||||
Sleep
|
||||
Loading…
Add table
Add a link
Reference in a new issue