Java 程序检查数字是否为质数

javaobject oriented programmingprogramming更新于 2024/8/6 19:57:00

质数是只有两个因数(1 和该数字本身)的特殊数字,它们不能被任何其他数字整除。因此,要检查给定数字是否为质数,首先,我们将给定数字除以小于或等于它的所有自然数,然后检查因数的数量。如果因数的数量只有两个,则给定数字为质数,否则不是。这种检查质数的方法称为因式分解。现在,让我们了解如何通过实现上述逻辑来识别给定数字是否为质数。

Java 程序检查数字是否为质数

在跳到检查质数的示例程序之前,让我们借助示例正确讨论问题陈述。

实例

输入 1

1

输出

1 不是质数

输入 2

5

输出

5 是质数

示例 1

以下示例说明如何从用户那里获取数字作为输入,并检查该数字是否为质数。

方法

  • 首先,定义一个 count 变量,用于存储给定数字的因子数。

  • 然后,创建 Scanner 类的一个实例,以便我们可以从用户那里获取输入。

  • 接下来,使用 if-else 块检查输入是否为质数。如果输入为 2,则打印它是质数,否则移至 else 块,我们将在其中使用 for 循环检查因子数。

  • 现在,使用另一个 if-else 块检查因子数。如果是 2,则打印质数,否则不是质数。

import java.util.*;
public class Example1 {
   public static void main(String[] args) {
    // 因子的初始计数
    int count = 0;
    // 创建 Scanner 类的实例
    Scanner sc = new Scanner(System.in);
    System.out.println("输入一个数字来检查质数");
    // 从用户那里获取输入
    int num = sc.nextInt();
    // 检查质数
    if(num == 2) {
    	System.out.println(num + " 是质数");
    } else {
    // 检查因子的数量
    for(int i = 1; i <= num; i++) {
        if(num % i == 0) {
        count++;
    }
    }
    // 检查计数的数量以打印结果
    if(count == 2) {
    	System.out.println(num + " 是质数");
    } else {
    	System.out.println(num + " 不是质数");
    }
    }
   }
}

输出 1

输入一个数字来检查质数
13
13 是质数

输出 2

输入一个数字来检查质数
56
56 不是质数

示例 2

在此 Java 程序中,我们将初始化一个整数变量来检查它是否为质数,而不是从用户那里获取输入。我们不会改变程序的逻辑。

public class Example2 {
   public static void main(String[] args) {
        int num = 89;
        System.out.println("给定的数字是:" + num);
        // 因数的初始数量
        int count = 0;
        // 检查质数
        if(num == 2) {
        System.out.println(num + " 是质数");
          } else {
        // 检查因数的数量
        for(int i = 1; i <= num; i++) {
        if(num % i == 0) {
        count++;
        }
        }
        // 检查计数的数量以打印结果
        if(count == 2) {
        System.out.println(num + " 是质数");
        } else {
        System.out.println(num + " 不是质数");
        }
      }
   }
}

输出

给定的数字是:89
89 是质数

结论

本文首先解释了数字被称为质数的条件是什么,以及如何检查给定的数字是否是质数。然后,我们编写了两个不同的 Java 程序,它们使用 if-else 块和 for 循环来识别质数。


相关文章