使用java,找出300到350之间的所有姐妹素数对,通过屏幕输出显示结果
时间: 2024-09-29 14:05:05 浏览: 30
Java列出2到100之间所有素数的方法
5星 · 资源好评率100%
在Java中,姐妹素数是对等差为2的两个素数的称谓。我们可以编写一个程序来查找指定范围内的姐妹素数对,以下是简单的实现:
```java
import java.util.ArrayList;
import java.util.List;
public class SisterPrimePairs {
public static void main(String[] args) {
int startRange = 300;
int endRange = 350;
List<int[]> pairs = findSisterPrimePairs(startRange, endRange);
if (!pairs.isEmpty()) {
System.out.println("在范围 " + startRange + " 到 " + endRange + " 内找到的姐妹素数对有:");
for (int[] pair : pairs) {
System.out.println(pair[0] + ", " + pair[1]);
}
} else {
System.out.println("在给定范围内没有找到姐妹素数对。");
}
}
public static List<int[]> findSisterPrimePairs(int low, int high) {
List<int[]> pairsList = new ArrayList<>();
for (int i = low; i <= high - 2; i++) { // 因为姐妹素数差2,所以只检查i到high-2
if (isPrime(i) && isPrime(i + 2)) {
pairsList.add(new int[]{i, i + 2});
}
}
return pairsList;
}
public 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;
}
}
```
这个程序首先定义了查找姐妹素数对的函数`findSisterPrimePairs`,它遍历指定范围内的整数,对于每个数字,检查它本身和下一个比它大2的数是否都是素数。如果是,就添加到结果列表中。
注意,`isPrime`函数用于判断一个数是否是素数,它通过试除法来确定。
阅读全文