Tell us what’s happening:
It works , I don’t know why the tests are failing
Your code so far
function convertToRoman(num) {
let RomanLookup = {
1000 : "M" ,
900 : "CM",
500 : "D",
400 : "CD",
100 : "C",
90 : "XC",
50 : "L",
40 : "XL",
10 : "X",
9 : "IX",
5 : "V",
4 : "IV",
1 : "I"
}
let valToCheck = Object.keys(RomanLookup).reverse();
let allNums = factoredNumber(num , valToCheck )
// console.log( valToCheck , allNums )
let ans = []
for(let i = 0 ;i < allNums.length ; i++ ){
ans.push(RomanLookup[allNums[i]])
}
return ans.join("");
}
function factoredNumber(leftNum , inValsOf){
let valCheck = inValsOf[0]
if( leftNum - valCheck == 0) {
factoredNum.push(valCheck)
return
}else if( valCheck > leftNum){
factoredNumber( leftNum , inValsOf.slice(1))
}else if(valCheck < leftNum){
leftNum = leftNum - inValsOf[0]
factoredNum.push(inValsOf[0])
factoredNumber( leftNum , inValsOf)
}
return factoredNum
}
let factoredNum = [];
let result = convertToRoman(1006);
console.log(result)
Your browser information:
User Agent is: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36
Challenge: JavaScript Algorithms and Data Structures Projects - Roman Numeral Converter
Link to the challenge: