今天看了一个关于循环语法应用的举例,要求设计一个小程序,算出101~200之间的质数,讲义中给出的代码是:
public class T{
public static void main(String[] args){
for(int i=101;i<200;i+=2){
boolean f = true;
for(int j=2;j<i;j++){
if(i%j==0){
f=false;
break;
}
}
if(!f) {continue;}
System.out.println(i);
}
}
}
这样能算出来,但是小弟有点懵,不知道在第二个for循环的时候应该怎么处理?怎么去思考这个问题,布尔型数据在什么时候需要?什么时候不需要?
大家有没有一个更容易理解的代码,本人比较笨,反应慢。还希望各位能指点指点?
我写的代码如下,一直运行出来都是这些数之间的奇数,帮我看看为什么?谢谢!!!!!!!!!!!!
public class T{
public static void main(String[] args){
//只能被自身和1整除的数为质数;如a不能被a和1以外的任何数整除,1<x<a的数
int i;
boolean f = true;
for(i=101;i<200;i+=2) {
for(int j=2;j<i;j++) {
if(i%j==0) {f=false;break;}
else if(i%j!=0) { f=true;}
}
if(f=true){System.out.println(i);}
}
}
}