Roman numerals/Encode: Difference between revisions
Add Batch File
(→{{header|Protium}}: Restore Prolog solution) |
Simple9371 (talk | contribs) (Add Batch File) |
||
Line 405:
160 NEXT I
170 PRINT VALUE;"=";V$</lang>
=={{header|Batch File}}==
{{trans|BASIC}}==
<lang dos>@echo off
setlocal enabledelayedexpansion
set cnt=0&for %%A in (1000,900,500,400,100,90,50,40,10,9,5,4,1) do (set arab!cnt!=%%A&set /a cnt+=1)
set cnt=0&for %%R in (M,CM,D,CD,C,XC,L,XL,X,IX,V,IV,I) do (set rom!cnt!=%%R&set /a cnt+=1)
::Testing
call :toRoman 2009
echo 2009 = !result!
call :toRoman 1666
echo 1666 = !result!
call :toRoman 3888
echo 3888 = !result!
pause>nul
exit/b 0
::The "function"...
:toRoman
set value=%1
set result=
for /l %%i in (0,1,12) do (
set a=%%i
call :add_val
)
goto :EOF
:add_val
if !value! lss !arab%a%! goto :EOF
set result=!result!!rom%a%!
set /a value-=!arab%a%!
goto add_val</lang>
{{Out}}
<pre>2009 = MMIX
1666 = MDCLXVI
3888 = MMMDCCCLXXXVIII</pre>
=={{header|BASIC256}}==
|