java2.计算100之内的所有的素数,并且每5个一行
时间: 2024-09-24 14:14:01 浏览: 57
java求100之内的素数(质数)简单示例
在Java中,我们可以使用Sieve of Eratosthenes算法来找出100以内的所有素数,然后按照每5个一组的方式输出。以下是实现代码:
```java
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> primes = sieveOfEratosthenes(100); // 找出100以内的所有素数
printPrimesInGroups(primes, 5); // 每5个一组打印
}
// Sieve of Eratosthenes 素数筛法
private static List<Integer> sieveOfEratosthenes(int n) {
boolean[] isPrime = new boolean[n + 1];
for (int i = 2; i * i <= n; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= n; j += i)
isPrime[j] = false; // 将非素数标记为false
}
}
List<Integer> primes = new ArrayList<>();
for (int i = 2; i <= n; i++)
if (isPrime[i])
primes.add(i);
return primes;
}
// 按照指定间隔打印素数列表
private static void printPrimesInGroups(List<Integer> primes, int interval) {
for (int i = 0; i < primes.size(); i += interval) {
for (int j = 0; j < interval && i + j < primes.size(); j++) {
System.out.print(primes.get(i + j) + " ");
}
System.out.println();
}
}
}
```
这段代码首先使用Sieve of Eratosthenes找到100以内的素数,然后在`printPrimesInGroups`方法中以每5个数一组的形式打印它们。
阅读全文