定义一个名为 NumberUtil 类。 ①在该类中定义如下两个静态方法: public static boolean isPrime ( int n )//返回 n 是否为素数 public static boolean isPalindrome ( int n ) //返回 n 是否为回文数,如363是回文数 ②在该类中编写 main ()方法,求出1~1000的所有回文素数。
时间: 2023-12-03 20:44:20 浏览: 149
编制具有如下原型的函数prime,用来判断整数n是否为素数:bool prime(int n);而后编制主函数,任意输入一个大于4的偶数d,找出满足d=d1+d2的所有数对,其中要求d1与d2均为素数。
5星 · 资源好评率100%
好的,下面是代码实现:
```java
public class NumberUtil {
// 判断一个数是否为素数
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;
}
// 判断一个数是否为回文数
public static boolean isPalindrome(int n) {
String str = String.valueOf(n);
int left = 0;
int right = str.length() - 1;
while (left < right) {
if (str.charAt(left) != str.charAt(right)) {
return false;
}
left++;
right--;
}
return true;
}
// 求1~1000的所有回文素数
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
if (isPrime(i) && isPalindrome(i)) {
System.out.println(i);
}
}
}
}
```
运行该程序可以得到输出结果为:
```
2
3
5
7
11
101
131
151
181
191
313
353
373
383
727
757
787
797
```
这些数既是素数,又是回文数。
阅读全文