JavaScript Algorithms and Data Structures Projects - Roman Numeral Converter

Tell us what’s happening:
I do passed tests through this code. My tests are passed upto convertToRoman(9)

Your code so far

function convertToRoman(num) {
  num = num.toString().split()
  const len = num.length
  let res = []
  let res1 = ''
  let res2 = ""
  let res3 = ""
  let res4 = ""
  if (len === 0) {
    res = []
  }
  else if (len > 0) {
    switch (num[len - 1]) {
      case "1":
        res1 = "I"
        break;
      case "2":
        res1 = "II"
        break;
      case "3":
        res1 = "III"
        break;
      case "4":
        res1 = "IV"
        break;
      case "5":
        res1 = "V"
        break;
      case "6":
        res1 = "VI"
        break;
      case "7":
        res1 = "VII"
        break;
      case "8":
        res1 = "VIII"
        break;
      case "9":
        res1 = "IX"
        break;
    }
    switch (num[len - 2]) {
      case "1":
        res2 = "X"
        break;
      case "2":
        res2 = "XX"
        break;
      case "3":
        res2 = "XXX"
        break;
      case "4":
        res2 = "XL"
        break;
      case "5":
        res2 = "L"
        break;
      case "6":
        res2 = "LX"
        break;
      case "7":
        res2 = "LXX"
        break;
      case "8":
        res2 = "LXXX"
        break;
      case "9":
        res2 = "XC"
        break;
    }
    switch (num[len - 3]) {
      case "1":
        res3 = "C"
        break;
      case "2":
        res3 = "CC"
        break;
      case "3":
        res3 = "CCC"
        break;
      case "4":
        res3 = "CD"
        break;
      case "5":
        res3 = "D"
        break;
      case "6":
        res3 = "DC"
        break;
      case "7":
        res3 = "DCC"
        break;
      case "8":
        res3 = "DCCC"
        break;
      case "9":
        res3 = "CM"
        break;
    }
    switch (num[len - 4]) {
      case "1":
        res4 = "M"
        break;
      case "2":
        res4 = "MM"
        break;
      case "3":
        res4 = "MMM"
        break;
    }
  }

  res.push(res4, res3, res2, res1)
  return res.join('')
}

convertToRoman(36);

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/115.0.0.0 Safari/537.36 Edg/115.0.1901.188

Challenge: JavaScript Algorithms and Data Structures Projects - Roman Numeral Converter

Link to the challenge:

It is based on this forum topic. I did not completely rip off it. I just had a good understanding of it and implemented it by my own.

https://forum.freecodecamp.org/t/ruman-number-converter/141069

It’s the first reply with switch case statements.

um. nevermind Looks like i forgot the separator in split()

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.