使用Java实现:找出10~100之间所有姐妹素数写入到文件中,再从文件读取打印到控制台。 所谓姐妹素数是指相邻两个奇数均为素数。(可编写一个求素数的方法)
时间: 2024-02-11 12:09:22 浏览: 140
指定范围的素数.java 使用Java实现
好的,我来为您解答这个问题。
首先,我们需要编写一个方法来判断一个数是否为素数:
```java
public static boolean isPrime(int n) {
if (n < 2) {
return false;
}
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
```
接下来,我们可以编写一个方法来找出指定范围内的所有姐妹素数:
```java
public static List<Integer> findSisterPrimes(int start, int end) {
List<Integer> sisterPrimes = new ArrayList<>();
for (int i = start; i <= end - 2; i += 2) {
if (isPrime(i) && isPrime(i + 2)) {
sisterPrimes.add(i);
sisterPrimes.add(i + 2);
}
}
return sisterPrimes;
}
```
最后,我们可以编写一个方法来将找到的姐妹素数写入文件,并从文件中读取并打印到控制台:
```java
public static void main(String[] args) throws IOException {
// 找出姐妹素数并写入文件
List<Integer> sisterPrimes = findSisterPrimes(10, 100);
FileWriter writer = new FileWriter("sister_primes.txt");
for (int prime : sisterPrimes) {
writer.write(prime + "\n");
}
writer.close();
// 从文件中读取并打印姐妹素数
BufferedReader reader = new BufferedReader(new FileReader("sister_primes.txt"));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
}
```
这样,就可以实现找出10~100之间所有姐妹素数并写入文件,再从文件读取并打印到控制台的功能了。
阅读全文