用java编写一个程序如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。 【输入】 (无) 【输出】 所有二位绝对素数(由小到大,一个数一行)
时间: 2024-09-18 18:04:40 浏览: 50
为了编写一个Java程序找出所有的两位绝对素数,我们可以创建一个函数来检查一个数是否为素数,并遍历所有两位数进行判断。这里是一个简单的示例:
```java
public class Main {
public static void main(String[] args) {
for (int i = 10; i < 100; ++i) { // 遍历两位数
if (isPrime(i) && isPalindromePrime(i)) {
System.out.println(i); // 输出绝对素数
}
}
}
// 判断一个数是否为素数
private static boolean isPrime(int num) {
if (num <= 1) return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) return false;
}
return true;
}
// 判断一个数是否为回文素数,即数字反转后还是素数
private static boolean isPalindromePrime(int num) {
int reversed = 0;
while (num != 0) {
int digit = num % 10;
reversed = reversed * 10 + digit;
num /= 10;
}
return isPrime(reversed);
}
}
```
这个程序会输出所有满足条件的两位绝对素数。
阅读全文