@kuzanatoliorg/algorithms
Version:
The utils package for react testing library
57 lines (56 loc) • 1.97 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.turnNumberToRomeNumber = void 0;
const rome_numbers_constants_1 = require("./rome-numbers.constants");
const turnNumberToRomeNumber = (num) => {
let res = 0;
for (let j = 0; j < num.length; j++) {
if (num[j] === 'M') {
res += rome_numbers_constants_1.M;
}
else if (num[j] === 'C' && num[j + 1] === 'M') {
res += rome_numbers_constants_1.M - rome_numbers_constants_1.C;
j++;
}
else if (num[j] === 'D') {
res += rome_numbers_constants_1.D;
}
else if (num[j] === 'C' && num[j + 1] === 'D') {
res += rome_numbers_constants_1.D - rome_numbers_constants_1.C;
j++;
}
else if (num[j] === 'C') {
res += rome_numbers_constants_1.C;
}
else if (num[j] === 'X' && num[j + 1] === 'C') {
res += rome_numbers_constants_1.C - rome_numbers_constants_1.X;
j++;
}
else if (num[j] === 'L') {
res += rome_numbers_constants_1.L;
}
else if (num[j] === 'X' && num[j + 1] === 'L') {
res += rome_numbers_constants_1.L - rome_numbers_constants_1.X;
j++;
}
else if (num[j] === 'X') {
res += rome_numbers_constants_1.X;
}
else if (num[j] === 'I' && num[j + 1] === 'X') {
res += rome_numbers_constants_1.X - rome_numbers_constants_1.I;
j++;
}
else if (num[j] === 'V') {
res += rome_numbers_constants_1.V;
}
else if (num[j] === 'I' && num[j + 1] === 'V') {
res += rome_numbers_constants_1.V - rome_numbers_constants_1.I;
j++;
}
else if (num[j] === 'I') {
res += rome_numbers_constants_1.I;
}
}
return res;
};
exports.turnNumberToRomeNumber = turnNumberToRomeNumber;