判断是否为绝对素数的Java代码
时间: 2023-08-29 15:06:18 浏览: 143
以下是一个判断是否为绝对素数的Java代码:
```java
public static boolean isAbsolutePrime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
int sum = 0;
while (n > 0) {
sum += n % 10;
n /= 10;
}
return isPrime(sum);
}
public static boolean isPrime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
```
该代码使用了两个方法,`isAbsolutePrime`和`isPrime`。`isAbsolutePrime`方法首先判断输入的数n是否小于2,如果是则返回false。接着使用for循环判断n是否为质数,如果不是则返回false。然后将n的每个数字相加,得到sum。最后调用`isPrime`方法判断sum是否为质数,如果是则返回true,否则返回false。
`isPrime`方法同样使用了for循环判断n是否为质数。如果n小于2则返回false,否则从2开始到n的平方根循环判断n是否能被整除,如果能则返回false,否则返回true。
阅读全文