java中判断素数

来源:百度知道 编辑:UC知道 时间:2024/06/03 05:22:44
class No1 {
public static void main (String []args)
{ int j;
for(int n=101;n<=200;n++)
{
for(j=2;j<=n-1;j++)
{
if(n%j==0)
break;
}
if(j>=n-1) //????????????????????这里帮忙解释一下
System.out.print(n+" ");
}
}

}
补充!第一:为什么如果一个素数在跳出内层循环之后 j==n 而不时j==n-1
第二:如果将f(j>=n-1)改成 if(j==n)就不行

巧了,以前碰到一个问题和你的完全一样!
http://zhidao.baidu.com/question/67495797.html

j>=n-1 // 根据上面给的条件,j最大只能取到n
所以可以改成j==n啊
我测试了,没问题

循环执行到爆啦,就是都没有找到符合n%j等于0的,j就一直加加加到>=n-1为止,然后循环就结束了.