JAVAwhile判断是否为素数
时间: 2024-10-17 21:03:23 浏览: 33
在Java中,我们可以使用`while`循环来检查一个整数是否为素数。素数是指大于1的自然数中只有两个正因数(1和它本身)的数。下面是一个简单的例子:
```java
public class PrimeChecker {
public static void main(String[] args) {
int num = 5; // 需要检验的数字
boolean isPrime = true;
while (num > 1) { // 当数字大于1时才考虑
if (num % 2 == 0) { // 如果能被2整除,说明不是素数
isPrime = false;
break; // 跳出循环
}
int divisor = 3; // 从3开始检查奇数因子
while (divisor * divisor <= num) { // 只需检查到sqrt(n),提高效率
if (num % divisor == 0) {
isPrime = false;
break;
}
divisor += 2; // 提前到下一个奇数,避免检查偶数
}
num += 2; // 进一步检查下一个奇数,因为偶数已经被排除了
}
if (isPrime) {
System.out.println(num + " 是素数");
} else {
System.out.println(num + " 不是素数");
}
}
}
```
阅读全文