质数
只能被1和它自身整除的数就是质数。
代码
package day03;
public class PrimeNum {
public static void main(String[] args) {
for (int i = 2; i <= 200; i++) {
boolean flag = true;
for (int j = 2; j < Math.sqrt(i); j++) {
if(i % j == 0){
flag = false;
break;
}
}
if(flag){
System.out.println(i);
}
}
}
}
运行结果
打印出2~200中所有的质数
思路分析
首先对2~200进行遍历对其中的每一个值i进行分析(从2开始到根号i依次对i取余,如果余数为零那么说明i不是质素)将这个数标记成不是质素用false标记跳出当前循环。在外部循环中输出标记为true(质数)的数。
遇到的错误
刚开始的时候我跳出循环用的continue;当时以为用了break就再也不进入第二个循环了。(其实当i每次加一都会再次进入循环)