Java教程

Java 检查一个数是否为质数的程序

Java 程序检查一个数是否为质数

在本文中,您将学习检查一个数是否为质数。这是在 Java 中使用 for 循环和 while 循环完成的。
要理解此示例,您应该了解以下Java 编程主题:
Java while 和 do...while 循环 Java for 循环
质数是只能被两个数整除的数: 1 和它本身。所以,如果任何数能被任何其他数整除,它就不是质数。

示例 1: 使用 for 循环检查素数的程序

public class Main {
  public static void main(String[] args) {
    int num = 29;
    boolean flag = false;
    for (int i = 2; i <= num / 2; ++i) {
      // condition for nonprime number
      if (num % i == 0) {
        flag = true;
        break;
      }
    }
    if (!flag)
      System.out.println(num + " is a prime number.");
    else
      System.out.println(num + " is not a prime number.");
  }
}
输出
29 is a prime number.
在上面的程序中,for循环用于判断给定的数 num是否为素数。
这里,请注意我们是从 2 循环到 num/2、这是因为一个数不能被它的一半整除。
for 循环中,我们检查该数字是否可以被给定范围 (2...num/2) 中的任何数字整除。
如果 num 是可整除的,flag 被设置为 true 并且我们跳出循环。这确定 num 不是素数。 如果 num 不能被任何数整除,flag 为假,num 为素数。

示例 2: 使用 while 循环检查素数的程序

public class Main {
  public static void main(String[] args) {
    int num = 33, i = 2;
    boolean flag = false;
    while (i <= num / 2) {
      // condition for nonprime number
      if (num % i == 0) {
        flag = true;
        break;
      }
      ++i;
    }
    if (!flag)
      System.out.println(num + " is a prime number.");
    else
      System.out.println(num + " is not a prime number.");
  }
}
输出
33 is not a prime number.
在上面的程序中,使用while循环代替for循环。循环一直运行到 i <= num/2。在每次迭代中,检查 num 是否可以被 i 整除,并且 i 的值加 1、
访问此页面了解如何显示两个区间之间的所有素数.
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4