Java 程序:找出整数的所有素数因子 (使用条件语句、循环语句、break 和 continue)
以下是一个使用条件语句和循环语句,并使用关键字 break 和 continue 的 Java 程序,用于显示一个整数的所有素数因子。该程序首先读取一个整数 n,然后计算并显示 n 的所有素数因子。
import java.util.Scanner;
public class PrimeFactors {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个整数: ");
int n = scanner.nextInt();
System.out.print("该整数的所有素数因子为: ");
for (int i = 2; i <= n; i++) {
if (n % i == 0) {
boolean isPrime = true;
for (int j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.print(i + " ");
n /= i;
i--;
}
}
}
}
}
在上述程序中,我们首先使用 Scanner 类从控制台读取一个整数 n。然后,我们使用两个嵌套的 for 循环来计算 n 的所有素数因子。外部循环从 2 开始,逐个检查从 2 到 n 之间的所有数字。内部循环用于检查每个数字是否是素数。如果某个数字 i 是素数且能整除 n,我们将 i 打印出来,并将 n 除以 i 的值更新为新的 n。同时,我们使用 i-- 来确保我们在下一次循环中仍然检查新的 i 值。这是因为 n 除以 i 的值可能仍然能被 i 整除。
请注意,我们在内部循环中使用关键字 break 来中断内部循环,如果被检查的数字 i 不是素数。而且,我们使用关键字 continue 来跳过外部循环的当前迭代,如果被检查的数字 i 不是能整除 n。这样做可以提高程序的效率,因为我们不需要继续检查非素数的数字。
最后,我们在控制台上打印出所有的素数因子。对于输入的整数 120,程序将输出:2 2 2 3 5。
原文地址: https://www.cveoy.top/t/topic/pfsh 著作权归作者所有。请勿转载和采集!