判断素数的流程

  1. 输入一个数字
  2. 使用for循环从2开始遍历到这个数字
  3. 判断每一个数字是否能整除输入的数字
  4. 如果有任意一个数字能整除输入的数字,则输入的数字不是素数
  5. 如果没有任何数字能整除输入的数字,则输入的数字是素数

代码示例

import java.util.Scanner;

public class PrimeNumber {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        // 输入一个数字
        System.out.print("请输入一个数字:");
        int number = scanner.nextInt();

        // 使用for循环从2开始遍历到这个数字
        boolean isPrime = true; // 默认假设输入的数字是素数

        for (int i = 2; i < number; i++) {
            // 判断每一个数字是否能整除输入的数字
            if (number % i == 0) {
                isPrime = false; // 如果有任意一个数字能整除输入的数字,则输入的数字不是素数
                break; // 跳出循环
            }
        }

        // 如果没有任何数字能整除输入的数字,则输入的数字是素数
        if (isPrime) {
            System.out.println(number + "是素数");
        } else {
            System.out.println(number + "不是素数");
        }
    }
}

代码解释:

  1. 第3行:导入 Scanner 类,用于接收用户输入的数字。
  2. 第5行:创建一个 Scanner 对象,用于接收用户的输入。
  3. 第8行:提示用户输入一个数字,并将用户输入的数字保存在 number 变量中。
  4. 第11行:创建一个布尔型变量 isPrime,并默认设置为 true,表示假设输入的数字是素数。
  5. 第13行:使用 for 循环从2开始遍历到 number
  6. 第16行:判断每一个数字是否能整除输入的数字,即 number 是否能被 i 整除。
  7. 第18行:如果有任意一个数字能整除输入的数字,则将 isPrime 设置为 false,表示输入的数字不是素数。
  8. 第19行:使用 break 跳出循环,不再遍历后续的数字。
  9. 第22行:如果没有任何数字能整除输入的数字,则 isPrime 仍然为 true,表示输入的数字是素数。
  10. 第24行:根据 isPrime 的值输出结果,判断输入的数字是素数还是非素数。