判断一个数是否为质数的 Java 程序
在本文中,您将学习检查一个数是否为质数。这是在 Java 中使用 for
循环和 while
循环完成的。
要理解此示例,您应该具备以下 Java 编程的知识:
质数是只能被 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 + " 是一个质数。");
else
System.out.println(num + " 不是质数。");
}
}
输出
29 是一个质数。
在上面的程序中,for 循环用于判断给定的数字 num
是否是质数。
在这里,请注意我们从 2 循环到 num/2。这是因为一个数不能被它的一半以上的数字整除。
在 for
循环内部,我们检查该数字是否可以被给定范围内 (2...num/2)
的任何数字整除。
- 如果
num
可以被整除,flag
设置为true
,我们跳出循环。这说明了num
不是质数。 - 如果
num
不能被任何数整除,flag
是false
并且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 + " 是一个质数。");
else
System.out.println(num + " 不是质数。");
}
}
输出
33 不是质数。
在上面的程序中,使用 while
循环代替 for
循环。循环运行直到 i <= num/2
。在每次迭代中,检查 num
是否可被 i
整除, 并且 i
增加 1。
访问此页面以了解如何显示两个数字之间的所有质数。