java接收用户随机输入一个大于等于2的整数,使用循环和break跳转语句,判断是否是质数。
时间: 2024-10-09 12:16:38 浏览: 34
在Java中,你可以创建一个简单的控制台程序来接收用户的输入并判断是否为质数。下面是一个示例:
```java
import java.util.Scanner;
public class PrimeNumberChecker {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个大于等于2的整数:");
int number;
do {
try {
number = scanner.nextInt();
if (number < 2) {
System.out.println("请输入一个大于等于2的整数!");
} else {
boolean isPrime = checkIfPrime(number);
if (isPrime) {
System.out.format("%d 是质数。", number);
} else {
System.out.format("%d 不是质数。", number);
}
}
} catch (InputMismatchException e) {
System.out.println("输入错误,请输入一个整数!");
scanner.next(); // 清除无效输入
}
} while (!isPrime); // 如果不是质数,继续循环直到找到为止
scanner.close();
}
private static boolean checkIfPrime(int num) {
if (num == 2 || num == 3) return true; // 特殊情况处理2和3
if (num % 2 == 0 || num <= 1) return false; // 质数定义排除偶数和小于2的数
for (int i = 3; i * i <= num; i += 2) { // 只需检查到√n,因为偶数已排除
if (num % i == 0) return false;
}
return true;
}
}
```
在这个程序中,我们首先获取用户输入,然后用`checkIfPrime()`函数来判断这个数字是否为质数。如果用户输入的不是质数,会使用`do...while`结构和`break`跳出循环。`checkIfPrime()`函数会检查数字是否能被2到其平方根之间的所有奇数整除。
阅读全文