fb:porticula NoPaste
Arabische Zahlen in römische umformen
Uploader: | ytwinky |
Datum/Zeit: | 26.07.2011 22:43:30 |
'wb volta ;-))
'[m]ein altes pascal-Programm nach FB portiert..
Function Ara2Roem(a As Integer) As String 'arabische Zahlen in römische 'Zahlen' umformen
Dim As String t(1 To 4, 1 To 10)={{"", "M", "MM", "MMM", "", "", "", "", "", ""}, _ 'Array vorbelegen
{"" ,"C", "CC", "CCC", "CD", "D", "", "DCC", "DCCC", "CM"}, _ 'Index 0=Leerzeichen
{"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"}, _ 'fehlende kriegen Leerzeichen
{"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"}}
Var az=Str(a+10000) 'arabische Zahl 5-stellig machen, nur die letzten 4 werden gebraucht..
If a<1 Or a>3999 Then Return "?" 'a ist ungültig, Fragezeichen zurückgeben!
Return t(1, az[1]-47) & t(2, az[2]-47) & t(3, az[3]-47) & t(4, az[4]-47) 'Schleife nicht nötig ;-))
End Function
Var a=0
Do
Do
Input "Eine Zahl von 1..3999 eingeben(0=Ende):", a
If a=0 Then End
Loop Until (a>=0) And (a<4000)
Print a &" als r”mische Zahl:" & Ara2Roem(a)
Loop Until a=0