JAVA判断一个数为可逆素数
时间: 2024-10-06 08:01:05 浏览: 58
在Java中,判断一个数是否为可逆素数(也称为“回文质数”),需要同时满足两个条件:这个数本身是一个质数,而且它的反向数字串同样也是一个质数。这里有一段简单的示例代码来帮助理解:
```java
public class Main {
public static boolean isPalindromePrime(int n) {
// 判断是否为质数
if (n <= 1) {
return false;
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return false; // 如果找到因子,则不是质数
}
}
// 反转数字并判断是否为质数
int reverse = 0;
while (n != 0) {
int remainder = n % 10;
reverse = (reverse * 10) + remainder;
n /= 10;
}
// 检查反转后的数字是否为质数
if (reverse > 1) {
for (int j = 2; j * j <= reverse; j++) {
if (reverse % j == 0) {
return false;
}
}
}
return true;
}
public static void main(String[] args) {
int num = 131; // 需要测试的数字
System.out.println(num + " 是可逆素数吗? " + isPalindromePrime(num));
}
}
```
在这个例子中,`isPalindromePrime()` 函数首先检查输入的数字是否是质数,然后计算其反向数字并再次检查是否为质数。如果两者都是质数,那么该数字就是可逆素数。
阅读全文