25 lines
553 B
Text
25 lines
553 B
Text
Public Sub Main()
|
|
|
|
'Testing
|
|
Print "2009 = "; toRoman(2009)
|
|
Print "1666 = "; toRoman(1666)
|
|
Print "3888 = "; toRoman(3888)
|
|
|
|
End
|
|
|
|
Function toRoman(value As Integer) As String
|
|
|
|
Dim result As String
|
|
Dim arabic As Integer[] = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1]
|
|
Dim roman As String[] = ["M", "CM", "D", "CD", "C", "XC", "L" , "XL", "X", "IX", "V", "IV", "I"]
|
|
|
|
|
|
For i As Integer = 0 To arabic.Max
|
|
Do While value >= arabic[i]
|
|
result &= roman[i]
|
|
value -= arabic[i]
|
|
Loop
|
|
Next
|
|
Return result
|
|
|
|
End Function
|