I have to find the lcm of all the numbers 1 through and including 20, and I came up with this code. It, although is inefficient and also comes up with an answer that is 2 more than the correct answer. Could anyone tell me why?
//variable used to shut off the while loop.
divisable = false;
var i = 2;
//function to prove if the number is a lcm
var isDivisable = function(number){
for(var i = 2; i<=20; i++){
if(number%i !== 0){
divisable = false;
// added the break to shut down the function,
// as no other loops need to be counted
break;
}else{
divisable = true;
}
}
};
while(!divisable){
isDivisable(i);
i+=2;
}