如何使用Java编程语言有效地计算并输出前100个素数?
时间: 2024-10-24 15:04:15 浏览: 14
在Java中,我们可以使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来有效地计算并输出前100个素数。以下是简单的步骤:
1. 创建一个布尔数组`isPrime[]`,大小为101,初始值都设为`true`,因为我们将从2开始检查。
2. 遍历从2到100(包括100),对于每个素数(当前遍历的数字),将它的所有倍数标记为非素数。例如,如果找到一个素数5,那么将5 * 2, 5 * 3, 5 * 4...等位置的`isPrime`值设置为`false`。
3. 当遍历结束后,数组中剩余为`true`的位置就是素数。因为数组是从2开始的,所以索引对应的数就是素数。
4. 输出前100个素数。由于我们已经保留了前100个素数的信息,只需遍历数组并打印索引即可。
```java
public class Main {
public static void main(String[] args) {
boolean[] isPrime = new boolean[101];
for (int i = 2; i <= Math.sqrt(100); i++) {
if (isPrime[i]) {
for (int j = i * i; j <= 100; j += i) {
isPrime[j] = false;
}
}
}
// 打印前100个素数
for (int i = 2; i < isPrime.length && i <= 100; i++) {
if (isPrime[i]) {
System.out.println(i);
}
}
}
}
```
阅读全文