判断101-200之间有多少个非素数或素数

经典题目:判断101-200之间有多少个非素数或素数

题目分析:首先判断素数的条件在一般领域,对正整数n,如果用2到

  sqrt(n)
之间的所有整数去除,均无法整除,则n为质数,即素数。

首先来写非素数输出及个数:这里直接贴代码

import java.lang.Math;
public static void main(String[] args) {
int n=0;
for(int i=101;i<=200;i++){
for(int j=2;j<=Math.sqrt(i);j++){
if(i%j==0){
n++;
System.out.printf("%d\t",i);
if(n%5==0){
System.out.println();
}
break;//跳出一层
}
}
}
System.out.println();
System.out.println(n);


输出素数的时候这时候应该设置一个标志位,用于标记是素数还是非素数

int n=0;
for(int i=101;i<=200;i++){
int flag=0;
for(int j=2;j<=Math.sqrt(i);j++){
if(i%j==0){ 
flag=1;
break;//跳出一层
}
}
if(flag==0){
n++;
System.out.printf("%d\t",i);
if(n%5==0){
System.out.println();
}
}
}

System.out.println();
System.out.println(n);


猜你喜欢

转载自blog.csdn.net/pursue_myheart/article/details/50443596