需求:
判断101-200之间有多少个素数,并输出所有素数
程序分析:
判断素数的方法:用一个数分别去除2到 sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
实现代码:
public class primenumber {
public static void main(String[] args) {
int count = 0;
for (int i = 101; i < 201; i++) {//这里描述了要求解的素数的问题
boolean s = false;
//boolean的作用就是记录题目中是否存在素数,一次循环下来若是素数,这s为true。
for (int j = 2; j <= Math.sqrt(i); j++) {//从2开始到这个数的平方根j进行运算,看是否存在其他因数
if (i % j == 0) {
s = false;
break;
} else {
s = true;
}
}
if (s == true) {//利用true这个结构来统计count的数量
count++;
System.out.print(i+" ");
}
}
System.out.println("\n"+"素数总数为:"+count);
}
}
输出结果为:
101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199
素数总数为:21