Java 请计算出3至1000范围内最大的10个素数,放入数组中,并计算出其累加和。
时间: 2024-09-20 13:05:55 浏览: 38
在Java中,我们可以使用Sieve of Eratosthenes算法来找出给定范围内的所有素数。然后,我们从这个列表中选择前10个素数并计算它们的累加和。以下是实现此功能的一个示例:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int start = 3;
int end = 1000;
int maxPrimes = 10;
// 使用Sieve of Eratosthenes算法找到素数
boolean[] isPrime = new boolean[end + 1];
for (int i = 2; i * i <= end; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= end; j += i) {
isPrime[j] = false;
}
}
}
// 保存最大10个素数到数组
int[] primeArray = new int[maxPrimes];
int count = 0;
for (int i = start; count < maxPrimes && i <= end; i++) {
if (isPrime[i]) {
primeArray[count++] = i;
}
}
// 计算累加和
long sum = 0;
for (int prime : primeArray) {
sum += prime;
}
System.out.println("The first " + maxPrimes + " prime numbers between 3 and 1000 are:");
for (int prime : primeArray) {
System.out.print(prime + " ");
}
System.out.println("\nTheir cumulative sum is: " + sum);
}
}
```
运行这段代码,你会得到3至1000范围内最大的10个素数及其累加和。
阅读全文