判断101-200之间有多少个素数,并输出所有素数。

时间:2021-02-27 11:29:32
/**
 *判断101-200之间有多少个素数,并输出所有素数。
 * @author Chenkunqing
 * Time: 2017/7/15
 * E-mail:2607740474@qq.com
 */
public class exam {
/*
* 分析:
* 关于这类问题,首先需要打印出101-200的值,
* 在从中判断素数的个数(质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数,这样的数称为素数。)
* 所以我们创建个布尔型进行判断,
* 再创建两个变量进行比较,如果取余后为0的就让它布尔型变false并不让它输出。
* 但要注意两个比较的变量一定是i跟i-1的关系,只有这样,
* 当i为任何数时,才不会i%i(本身)=0,即不进行if判断,boolen型仍然等于true;
* 从而使素数都等于true,输出true即输出素数出来
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
boolean flag= true;
//定义一个boolen类型
int count=0;
//统计素数的变量,先让它初始化
for(int i=101;i<200;i++){
for(int j=2;j<i;j++){
if(i%j==0){
flag=false;
//本次循环可以让i%i-1=0的值boolean变成false
//剩余boolean=true,均为素数
}

if(flag){
count++;
System.out.print(i+",");
}
flag=true;
}
System.out.println("在101跟200之间的素数共有:"+count);

}
}