有关素数的疑问
public class TestSuShu{static int num;
public static void main(String[] args) {
for (int i = 101; i < 200; i++) {
int j;
int k=(int)(Math.sqrt((double)i)+1);//为什么里面要加1
for (j = 2; j <k; j++){
if (i % j == 0) {
break;
}
}
if ( j >(int)(Math.sqrt(i))) {//为什么此处要做这样的判断,为什么这里面不要加1了
num++;
}
}
System.out.println();
System.out.println("素数的个数为:"+num);
}
}
请各位详细的解答一下我的疑问,如果还有更好的方法,或者程序可以修改一下,请帮忙写一下,呵呵,谢谢