How to convert an integer to Roman numerals in JavaScript

1 Answer

0 votes
function intToRoman(num) {
  // Define values and their corresponding Roman numerals
  const values = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1];
  const symbols = ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"];

  let roman = "";

  // Loop through values and subtract while possible
  for (let i = 0; i < values.length; i++) {
    while (num >= values[i]) {
      num -= values[i];
      roman += symbols[i]; // append symbol
    }
  }

  return roman;
}

console.log(intToRoman(1994)); 
console.log(intToRoman(196));  
console.log(intToRoman(9));   



/*
run:

MCMXCIV
CXCVI
IX

*/

 



answered Dec 2, 2025 by avibootz
...