このコードは、多くの非素数を誤って素数として計算しますが、その理由はわかりません。基本的に、出力は入力に対して「プライム」と「非プライム」を交互に使用します。
#!/usr/bin/env node
for (var i = 3; i <= 30; i++) {
console.log(i + ": " + isPrime(i) + " ");
}
function isPrime(num) {
var counter;
for (counter = 2; counter < num; counter++) {
if(num % counter == 0) {
return "not prime";
}
else {
return "prime";
}
}
}