Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
18
Task/Roman-numerals-Encode/Nim/roman-numerals-encode.nim
Normal file
18
Task/Roman-numerals-Encode/Nim/roman-numerals-encode.nim
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
import strutils
|
||||
|
||||
const nums = [(1000, "M"), (900, "CM"), (500, "D"), (400, "CD"), (100, "C"), (90, "XC"),
|
||||
(50, "L"), (40, "XL"), (10, "X"), (9, "IX"), (5, "V"), (4, "IV"), (1, "I")]
|
||||
|
||||
proc toRoman(n: Positive): string =
|
||||
var n = n.int
|
||||
for (a, r) in nums:
|
||||
result.add(repeat(r, n div a))
|
||||
n = n mod a
|
||||
|
||||
for i in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
|
||||
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
||||
25, 30, 40, 50, 60, 69, 70, 80, 90, 99,
|
||||
100, 200, 300, 400, 500, 600, 666, 700, 800, 900,
|
||||
1000, 1009, 1444, 1666, 1945, 1997, 1999,
|
||||
2000, 2008, 2010, 2011, 2500, 3000, 3999]:
|
||||
echo ($i).align(4), ": ", i.toRoman
|
||||
Loading…
Add table
Add a link
Reference in a new issue