目录

一、何为素数?

1. 定义:

2. 例如:

二、该代码主要实现以下功能:

主方法(main):

素数判断方法(isPrime):

三、实现以上功能的代码如下:


一、何为素数?

1. 定义

素数:又称质数,是指在大于 1 的自然数中除了 1 和它本身以外不再有其他因数的自然数。

2. 例如:

        判断数字 7 是否为素数?

                1)7 是大于 1 的自然数

                2)检查它能否被 2~6 之间的数整除:

7 / 2 = 3 余 1(不能整除)

7 / 3 = 2 余 1(不能整除)

7 / 4 = 1 余 3(不能整除)

7 / 5 = 1 余 2(不能整除)

7 / 6 = 1 余 1(不能整除)

        结论:7 是素数


二、该代码主要实现以下功能:

主方法(main)

  1. 定义了一个计数变量count用于统计素数个数
  2. 使用for循环遍历101 到 200 之间的所有整数
  3. 对每个数字调用isPrime方法判断是否为素数
  4. 如果是素数,则打印该数字并让计数变量count加 1
  5. 循环结束后,打印统计的素数总个数

素数判断方法(isPrime)

  1. 接收一个整数参数n
  2. 通过for循环检查从 2 到 n-1 之间的所有整数
  3. 如果n能被其中任何一个数整除(即n%i == 0),则n不是素数,返回false
  4. 如果循环结束都没有找到能整除n的数,则n是素数,返回true

三、实现以上功能的代码如下:

package Demo;

public class TestIsPrime {
    /**
     * 目标:找出101-200之间的全部素数,并进行统计个数。
     * 何为素数:只能被1和自身整除的数字。
     */
    public static void main(String[] args) {
        int count = 0;
        //1、遍历101-200之间的所有数字
        for (int i=101;i<=200;i++){
            //2、每遍历到一个数字,判断这个数字是否是素数,是素数则输出。(独立判断素数的方法)
            if(isPrime(i)){
                System.out.println(i);
                count++;//统计素数个数
            }
        }
        System.out.println("素数个数:"+count);//输出素数个数
    }

    /**
     * 该方法功能:判断一个数字是否为素数
     * @param n 待判断的正整数
     * @return true表示n是素数,false表示n不是素数
     */
    public static boolean isPrime(int n){
        //3、判断素数的方法:遍历2-n之间的所有数字
        for (int i=2;i<n;i++){
            //4、每遍历到一个数字,判断n是否被i整除,被i整除则不是素数,返回false。
            if(n%i==0){
                return false;
            }
        }
        //5、循环结束,n没有被2-n之间的数字整除,则n是素数,返回true。
        return true;
    }
}

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐