-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRomanNumeralConverter
More file actions
124 lines (124 loc) · 3.43 KB
/
RomanNumeralConverter
File metadata and controls
124 lines (124 loc) · 3.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
function convertToRoman(num) {
let romanString = '';
while (num > 0){
switch (true) {
// triple digits
case (num > 999):
romanString = romanString.concat('M');
num = num -1000;
break;
case (num > 899):
romanString = romanString.concat('CM');
num = num -900;
break;
case (num > 499):
romanString = romanString.concat('D');
num = num -500;
break;
case (num > 499):
romanString = romanString.concat('D');
num = num -500;
break;
case (num > 399):
romanString = romanString.concat('CD');
num = num -400;
break;
case (num > 99):
romanString = romanString.concat('C');
num = num -100;
break;
// double digits
case (num > 90):
romanString = romanString.concat('XC');
console.log(romanString);
num = num -90;
break;
case (num > 80):
romanString = romanString.concat('LXXX');
num = num -80;
break;
case (num > 50):
romanString = romanString.concat('L');
num = num -50;
break;
case (num > 39):
romanString = romanString.concat('XL');
num = num -40;
break;
case (num > 30):
romanString = romanString.concat('XXX');
num = num -30;
break;
//single digits
case (num > 9):
romanString = romanString.concat('X');
console.log(romanString);
num = num -10;
break;
case (num > 8):
romanString = romanString.concat('IX');
num = num -9;
break;
case (num > 4):
romanString = romanString.concat('V');
num = num -5;
break;
case (num > 3):
romanString = romanString.concat('IV');
num = num -5;
break;
case (num > 0):
romanString = romanString.concat('I');
num = num -1;
break;
default:
console.log(num);
}//end of switch
}//end of while..
console.log(romanString);
return romanString;
}//end of function convertToRoman(num)
// convertToRoman(3);
// convertToRoman(4);
// convertToRoman(5);
// convertToRoman(6);
// convertToRoman(7);
// convertToRoman(8);
// convertToRoman(9);
// convertToRoman(10);
// convertToRoman(11);
// convertToRoman(12);
// convertToRoman(13);
// convertToRoman(14);
// convertToRoman(15);
// convertToRoman(16);
// convertToRoman(17);
// convertToRoman(18);
// convertToRoman(19);
// convertToRoman(20);
// convertToRoman(21);
// convertToRoman(22);
// convertToRoman(23);
// convertToRoman(36);
// convertToRoman(39); // should return "XXXIX".
// convertToRoman(42); // should return "XLII".
// convertToRoman(40); // should return "XL"
// convertToRoman(44); // should return "XLIV".
// convertToRoman(45); // should return "XLV"
convertToRoman(49); // should return "XLIX"
// convertToRoman(68); // should return "LXVIII"
// convertToRoman(96); // should return "XCVI"
// convertToRoman(97); // should return "XCVII"
// convertToRoman(98); // should return "XCVIII"
// convertToRoman(99); // should return "XCIX"
// convertToRoman(100); // should return "C"
// convertToRoman(333); // should return "CCCXXXIII"
// convertToRoman(400); // should return "CD"
// convertToRoman(500); // should return "D"
// convertToRoman(666); // should return "DCLXVI"
// convertToRoman(999); // should return "CMXCIX"
// convertToRoman(1000);
// convertToRoman(649); // should return "DCXLIX"
// convertToRoman(798); // should return "DCCXCVIII"
// convertToRoman(891); // should return "DCCCXCI"
// convertToRoman(3999); // should return "MMMCMXCIX"