用java打印素数并输出
问题分析
首先我们需要了解素数的概念,素数是除了本身和1外,不能被其他整数整除的整数。(我的理解)
百度百科 素数
另外,我们还要知道 只要保证除到一半没有余数就能保住为素数,没必要除完。
代码
private static void funtion(int a) {
// TODO Auto-generated method stub
final int NUMBER_OP = 10;
int mun = 2, total = 0;
while (true) {
if (mun == a)
break;
boolean prime = true;
for (int resdiut = 2; resdiut <= mun / 2; resdiut++) {
if (mun % resdiut == 0){
prime = false;
break;
}
}
if (prime == true) {
total++;
if (total % NUMBER_OP == 0)
System.out.println(mun);
else
System.out.print(mun + " ");
}
mun++;
}
}
运行结果
分析代码
1.我们写代码时,可以将常量先定义,就像代码中的NUMBER_OP,虽然直接写个10,更简单,但是下次,想变为20个一排时,我们还以再看代码,十分麻烦。
2.如果我们要循环很多数据,找出其中需要的,我们可以使用先定义Boolean的形式,找到时改变Boolean值。再在之后的数据中加以处理,如,在寻找素数中 prime = false;。