JAVA写程序求出给定范围内所有的回文素数,要求(1)使用一类方法判断一个整数是否是素数;(2)使用一类方法判断一整数是否是回文。 然后在测试类中找出给出的整数n到m范围内所有的回文素数。
时间: 2024-09-17 19:04:30 浏览: 46
在Java中,我们可以分别创建两个方法来判断一个整数是否是素数和回文:
1. 判断素数的方法:
```java
public 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;
}
```
这个方法从2开始遍历到`sqrt(num)`,如果发现能被整除,那么就不是素数。
2. 判断回文的方法:
```java
public boolean isPalindrome(int num) {
int reversedNum = 0;
int originalNum = num;
while (num != 0) {
int digit = num % 10;
reversedNum = reversedNum * 10 + digit;
num /= 10;
}
return originalNum == reversedNum;
}
```
这个方法将输入的数字反转并与原数比较,如果相等则为回文。
接着,在一个测试类中,可以这样寻找给定范围内的回文素数:
```java
public class Main {
public static void main(String[] args) {
int n = 100;
int m = 500;
for (int i = n; i <= m; i++) {
if (isPrime(i) && isPalindrome(i)) {
System.out.println("回文素数: " + i);
}
}
}
}
```
在这个例子中,我们遍历从n到m的所有整数,对每个数检查是否既是素数又是回文,如果是,则打印出来。
阅读全文