A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

求100之间的质数有没有知道的,要简单点的

9 个回复

倒序浏览
顶一下,有没有懂得分享一下
回复 使用道具 举报
public class Test03 {                                 public static void main(String[] args) {                                         //1.定义计数器统计素数的个数                                         int count = 0;                                         //2.遍历判断是否是素数并打印                                         for (int i = 2; i < 100; i++) {                                                 //3.调用方法,判断1个数是否是素数                                                 boolean isPrime =isPrime(i);                                                 if (isPrime) {                                                         System.out.print(i + " ");                                                         count++;                                                         if(count%5==0) {                                                                 System.out.println();                                                         }                                                 }                                         }                                         System.out.println();                                         System.out.println("1-100的素数的个数为:" + count);                                 }                                 //判断是否是素数的方法                                 public static boolean isPrime(int num) {                                         for (int i = 2; i < num; i++) {  //i的取值范围[2到 num-1]                                                 if ((num % i) == 0) {                //能被[2到 num-1]之间的数整除                                                         return false;                                                 }                                         }                                         return true;                                 }                         }
回复 使用道具 举报
public class Test03 {
                                public static void main(String[] args) {
                                        //1.定义计数器统计素数的个数
                                        int count = 0;
                                        //2.遍历判断是否是素数并打印
                                        for (int i = 2; i < 100; i++) {
                                                //3.调用方法,判断1个数是否是素数
                                                boolean isPrime =isPrime(i);
                                                if (isPrime) {
                                                        System.out.print(i + " ");
                                                        count++;
                                                        if(count%5==0) {
                                                                System.out.println();
                                                        }
                                                }
                                        }
                                        System.out.println();
                                        System.out.println("1-100的素数的个数为:" + count);
                                }
                                //判断是否是素数的方法
                                public static boolean isPrime(int num) {
                                        for (int i = 2; i < num; i++) {  //i的取值范围[2到 num-1]
                                                if ((num % i) == 0) {                //能被[2到 num-1]之间的数整除
                                                        return false;
                                                }
                                        }
                                        return true;
                                }
                        }
回复 使用道具 举报
public static void main(String[] args) {
                for (int i = 1; i <=100; i++) {
                        int count = 0;
                        for (int j = 1; j <= i; j++) {
                                if(i%j==0){
                                        count++;                                       
                                }
                        }
                        if(count==2){
                                System.out.print(i+" ");
                        }
                }
               
        }还有没有比这个简单的整理了下发现这个最容易理解了
回复 使用道具 举报
class Text_TG2 {
        public static void main(String[] args) {
                int sum = 0;
                for (int i = 2;i <=100;i++) {
                        int count1 = 0;
                        for (int j=1;j <= i;j++ ) {
                                if (0 ==i%j) {
                                        count1++;
                                }       
                        }
                        if (2 == count1) {
                                System.out.print(i + " ");
                                sum++;
                                if (0 == sum%5) {
                                        System.out.println();
                                }
                        }
                }
                //System.out.println(sum);
        }
}
/*(1)打印1-100之间的所有素数及个数
        (2)每行输出5个满足条件的数,之间用空格分隔
        (3)如果一个大于1的自然数,这个数只能被1和其本身整除,这个数就叫素数。
        (4)如:2 3 5 7 11
        */
回复 使用道具 举报
和上个差不多啊
回复 使用道具 举报
楼主我真不是抄你的 这是一个作业题
回复 使用道具 举报
做代码题就是学习思路,有好的思路就分享下子嘛
回复 使用道具 举报
  1. package com.heima.bean;

  2. public class PrimeNumber {
  3.         /*
  4.          * 求1到100之间质数的个数
  5.          *
  6.          * 质数:就是1到100 之间,任意一个数,需要除以从2开始到他本身或者本身一半之间的所有整数,如果都不能整除,就说明是质数
  7.          */
  8.         public static void main(String[] args) {
  9.                  int i,j;
  10.                  int count = 0;                                                                //计数器
  11.                  for(i = 1; i <= 100; i++){                                        //一百以内包含一百
  12.                          if (i == 1) {                                                                //如果是1就跳出本次循环
  13.                                 continue;
  14.                         }
  15.                          for(j = 2; j <= i / 2; j++){                                //被除数除以从2开始,一直到被除数的一半
  16.                                  if(i % j == 0)                                                 //只要能被整数就跳出循环
  17.                                          break;
  18.                          }
  19.                          if (j > i / 2)                                                         //如果不能被整除,需要判断这个数是否大于了被除数的一半如果不能被整除
  20.                                  count++;                                                                //需要判断这个数是否大于了被除数的一半,如果不大于的话,那么还需要继续判断
  21.                  }                                                                                                //直到除数大于被除数的一半时,还不能整数,就说明是质数
  22.                  System.out.println(count);
  23.         }

  24. }
复制代码

相对上面的来说,我的还是比较简单的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马