嗨,我对主要功能有一点问题。
public static boolean isPrime(long num) {
for (long i=3; i <num/2; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
我不明白为什么它必须是num / 2和if(num%i == 0)。 这是否意味着如果 num = 10且i = 4,这将导致2.使4为素数?
抱歉,如果这是一个愚蠢的问题,我刚开始编码\ m /编辑:也可以有人解释if(num % 1 ==0)
答案 0 :(得分:1)
如果你想编写一个代码来检查它是否是素数,那么你需要改变循环初始化。
长i = 3 - &gt;长i = 2。因为素数不能被除1之外的任何数字整除。所以你应该开始将数字除以2,