判断101-200之间有多少个素数,并输出所有素数
素数 :如果除了1和它本身以外,不能被其他正整数整除,就叫质数。
分析
101-200之间的数据可以采用循环依次拿到; 每拿到一个数,判断该数是否是质数。
判断规则是:从2开始遍历到该数的一半的数据,看是否有数据可以整除它,有则不是质数,没有则是质数.
package com.itheima.test;
public class Test2 {
public static void main(String[] args) {
// 方式2 : 扩展
for (int i = 101; i <= 200; i++) {
int count = 0;// 记录的是当前数据取余 1-它本身 等于0 个数
for (int j = 1; j <= i; j++) {
if (i % j == 0) {
count++;
}
}
if (count == 2) {
System.out.println(i + "是一个质数");
}
}
}
// 方式1
public static void method() {
// 记录的是质数的个数
int count = 0;
// 1 通过循环拿到101-200之间所有的数据
for (int i = 101; i <= 200; i++) {
// 定义一个boolean类型的变量
// flag 为false , 代表的是当前数据不是质数
// flag 为true , 代表的是当前数据是质数
boolean flag = true;// false
// 2 通过循环拿到2 到 i的一半数据
for (int j = 2; j <= i / 2; j++) {// j = 2 ... 51
if (i % j == 0) {
flag = false;
break;
}
}
// if(flag == true){
if (flag) {
System.out.println(i + "是一个质数");
count++;
}
}
System.out.println("101-200之间的质数个数为:" + count);
}
}