Tell us what’s happening:
All the tests except for test 7 runs fine. But the answer that my function gives me for test 7 makes sense since the only highest prime factors for the range is 19 and 23
Your code so far
function smallestCommons (arr) {
const min = Math.min(...arr);
const max = Math.max(...arr);
const array = [];
const newArr = [];
for (let i = min; i < max + 1; i++) {
array.push(i);
}
const primeArr = array.filter(num => {
if (num <= 1) {
return false;
}
if (num % 2 === 0 && num > 2) {
return false;
}
for (let i = 3; i * i <= num; i += 2) {
if (num % i === 0) {
return false;
}
}
return true;
})
console.log(array);
console.log(primeArr);
primeArr.filter(num => {
for (let i = 10; i > 0; i--) {
if (array.includes(num ** i)) {
newArr.push(num ** i);
break;
} else if(!array.includes(num ** i)) {
continue;
}
}
});
console.log(newArr);
return newArr.reduce((acc, curr) => acc * curr, 1);
}
console.log(smallestCommons([23, 18]));
//6056820
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
Challenge Information:
Implement a Range-Based LCM Calculator - Implement a Range-Based LCM Calculator