判断101-200之间有多少个素数,并输出所有素数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断101-200之间有多少个素数,并输出所有素数相关的知识,希望对你有一定的参考价值。
1 public class Demo01 { 2 public static void main(String[] args) { 3 int count = 0; 4 for (int i = 101; i <= 200; i++) { 5 boolean flag = false; 6 for (int j = 2; j < i; j++) { 7 if (i % j == 0) { 8 flag = true; 9 break; 10 } 11 } 12 if (!flag) { 13 count++; 14 System.out.print(i + " "); 15 } 16 } 17 System.out.println(count); 18 } 19 }
上述方法中第二次循环次数过多,可优化,利用Math.sqrt()方法,可避免重复,假如i=150时,j=10时,i已经被j整除,就没有必要让j循环到15了
1 public class Demo01 { 2 public static void main(String[] args) { 3 int count = 0; 4 //素数肯定是在奇数中产生,素数只能被1和它本身整除 5 for (int i = 101; i < 200; i += 2) { 6 boolean b = false; 7 //double Math.sqrt(double d) 求参数的平方根 返回值为double 8 for (int j = 2; j <= Math.sqrt(i); j++) { 9 if (i % j == 0) { 10 b = false; 11 break; 12 } else { 13 b = true; 14 } 15 } 16 if (b == true) { 17 count++; 18 System.out.print(i+" "); 19 } 20 } 21 System.out.println("素数个数是: " + count); 22 } 23 }
以上是关于判断101-200之间有多少个素数,并输出所有素数的主要内容,如果未能解决你的问题,请参考以下文章
算法---判断101-200之间有多少个素数,并输出所有素数。
题目:判断101-200之间有多少个素数,并输出所有素数(只能被1和自身整除的数是素数)
代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。