题目:判断101-200之间有多少个素数,并输出所有素数。
package test;
public class Main {
public static void main(String[] args) {
int sum = 0;
math mymath = new math();
for(int i = 101; i <= 200; i ++)
{
if(mymath.sushu(i)) {
sum ++;
System.out.println(i);
}
}
System.out.println(sum);
}
}
class math
{
public boolean sushu(int x )
{
if(x <= 2)
{
return true;
}
for(int i = 2; i < x/2; i ++)
{
if(x % i == 0)
{
return false;
}
}
return true;
}
}
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
这题的 话就是自己额外写出一个方法封装会比较好点。这样可以省去一些逻辑判断。