Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,17 @@
|
|||
* Roman to Arabic
|
||||
define('arabic(n)s,ch,val,sum,x') :(arabic_end)
|
||||
arabic s = 'M1000 D500 C100 L50 X10 V5 I1 '
|
||||
n = reverse(n)
|
||||
arab1 n len(1) . ch = :f(arab2)
|
||||
s ch break(' ') . val
|
||||
val = lt(val,x) (-1 * val)
|
||||
sum = sum + val; x = val :(arab1)
|
||||
arab2 arabic = sum :(return)
|
||||
arabic_end
|
||||
|
||||
* Test and display
|
||||
tstr = 'MMX MCMXCIX MCDXCII MLXVI CDLXXVI "
|
||||
tloop tstr break(' ') . r span(' ') = :f(out)
|
||||
astr = astr r '=' arabic(r) ' ' :(tloop)
|
||||
out output = astr
|
||||
end
|
||||
|
|
@ -0,0 +1,15 @@
|
|||
* Roman to Arabic
|
||||
define("arabic1(romans,arabic1)rdigit,adigit,b4")
|
||||
romans1 = " 0 IX9 IV4 III3 II2 I1 VIII8 VII7 VI6 V5" :(arabic1_end)
|
||||
arabic1 ident(romans) :s(return)
|
||||
romans (break("IV") | rem) . b4 rem . rdigit = b4
|
||||
romans1 " " rdigit any("0123456789") . adigit
|
||||
arabic1 = adigit arabic1
|
||||
romans = replace(romans,"MDCLX","CLXVI") :(arabic1)
|
||||
arabic1_end
|
||||
* Test and display
|
||||
tstr = "MMX MCMXCIX MCDXCII MLXVI CDLXXVI "
|
||||
tloop tstr break(' ') . r span(' ') = :f(out)
|
||||
astr = astr r '=' arabic1(r) ' ' :(tloop)
|
||||
out output = astr
|
||||
end
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
* Roman to Arabic
|
||||
define("arabic1(romans,arabic1)rdigit,adigit,b4")
|
||||
romans1 = " 0 IX9 IV4 III3 II2 I1 VIII8 VII7 VI6 V5" :(arabic1_end)
|
||||
arabic1 ident(romans) :s(return)
|
||||
romans (break("IV") | rem) . b4 rem . rdigit = replace(b4,"MDCLX","CLXVI")
|
||||
romans1 " " rdigit any("0123456789") . adigit
|
||||
arabic1 = adigit arabic1 :(arabic1)
|
||||
arabic1_end
|
||||
* Test and display
|
||||
tstr = " MMX MCMXCIX MCDXCII MLXVI CDLXXVI "
|
||||
tstr span(' ') break(' ') $ r *?(astr = astr r '=' arabic1(r) ' ') fail
|
||||
output = astr
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue