JAVA给定两个正整数,找出这两个正整数之间的所有对称素数
时间: 2024-03-17 07:41:31 浏览: 143
好的,我来为您解答。
首先,我们需要判断一个数是否为素数,可以使用以下代码:
```java
public static boolean isPrime(int n) {
if (n <= 1) {
return false;
}
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
```
接下来,我们需要判断一个数是否对称,即将该数反转后是否与原数相等,可以使用以下代码:
```java
public static boolean isSymmetric(int n) {
int reverse = 0;
int original = n;
while (n > 0) {
int digit = n % 10;
reverse = reverse * 10 + digit;
n = n / 10;
}
return original == reverse;
}
```
有了这两个方法,我们就可以找到给定两个正整数之间的所有对称素数了,具体实现如下:
```java
public static void findSymmetricPrimes(int num1, int num2) {
if (num1 > num2) {
int temp = num1;
num1 = num2;
num2 = temp;
}
for (int i = num1; i <= num2; i++) {
if (isPrime(i) && isSymmetric(i)) {
System.out.println(i);
}
}
}
```
首先判断num1和num2的大小关系,确保num1小于等于num2。然后遍历num1和num2之间的所有数,判断每个数是否为素数且是否对称,如果是,则输出该数。
阅读全文
相关推荐


















