Skip to content

Commit 719a22d

Browse files
authored
Merge pull request vJechsmayr#67 from eriksape/master
Number to Roman
2 parents a75c8b3 + af97a80 commit 719a22d

1 file changed

Lines changed: 14 additions & 0 deletions

File tree

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
const KEYS = ["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM",
2+
"","X","XX","XXX","XL","L","LX","LXX","LXXX","XC",
3+
"","I","II","III","IV","V","VI","VII","VIII","IX"];
4+
5+
const IntegerToToman = num => {
6+
if (isNaN(num)) return `value "${num}" is not a number`;
7+
if(!Number.isInteger(num)) return `value "${num}" is not an integer`;
8+
const digits = String(+num).split("")
9+
let roman = "";
10+
11+
for(let i = 2; i >= 0; i--) roman = (KEYS[+digits.pop() + (i * 10)] || "") + roman;
12+
13+
return Array(+digits.join("") + 1).join("M") + roman;
14+
}

0 commit comments

Comments
 (0)