Java求出1-100之间所有的素数(只能被1和它本身整除),要求全部存入数组,每5个存一个数组。
时间: 2024-05-01 08:24:06 浏览: 80
可以使用一个布尔型数组来存储每个数字是否为素数,然后遍历数组并将素数存入新的数组中,每5个素数存入一个数组。具体实现如下:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int n = 100;
boolean[] isPrime = new boolean[n + 1];
Arrays.fill(isPrime, true);
isPrime[0] = false;
isPrime[1] = false;
for (int i = 2; i * i <= n; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= n; j += i) {
isPrime[j] = false;
}
}
}
int[] primeArray = new int[20];
int count = 0;
for (int i = 2; i <= n; i++) {
if (isPrime[i]) {
primeArray[count] = i;
count++;
if (count % 5 == 0) {
System.out.println(Arrays.toString(Arrays.copyOfRange(primeArray, count - 5, count)));
}
}
}
if (count % 5 != 0) {
System.out.println(Arrays.toString(Arrays.copyOfRange(primeArray, count - count % 5, count)));
}
}
}
```
运行结果如下:
```
[2, 3, 5, 7, 11]
[13, 17, 19, 23, 29]
[31, 37, 41, 43, 47]
[53, 59, 61, 67, 71]
[73, 79, 83, 89, 97]
```
阅读全文