JSFiddle - React, Tailwind, and code Playground
by samdelagarza
JavaScript
function test(val1, val2) {
if (val1 !== val2) {
console.error(`Value: ${val1} does not equal ${val2}`);
}
}
function convertToRomanNumeral(value) {
var romanNumerals = {
'M': 1000,
'CM': 900,
'D': 500,
'C': 100,
'L': 50,
'XL': 40,
'X': 10,
'IX': 9,
'V': 5,
'IV': 4,
'I': 1
};
var findValue = function(value, solveFor, result = '') {
let val = romanNumerals[solveFor];
if (value >= val) {
let quotient = Math.floor(value / val);
let remainder = value % val;
for (let i = 0; i < quotient; i++) {
result += solveFor;
}
value = remainder;
}
return {
value,
result
};
};
var keys = Object.keys(romanNumerals);
var result = '';
keys.forEach(x => {
let temp = findValue(value, x)
value = temp.value;
result += temp.result;
});
console.log('result: ', result);
return result;
};
test(convertToRomanNumeral(3549), 'MMMDXLIX');
test(convertToRomanNumeral(3949), 'MMMCMXLIX');