java编程实现输出100~300之间所有质数
时间: 2024-09-25 13:02:16 浏览: 44
要在Java中实现输出100到300之间的所有质数,可以采用“埃拉托斯特尼筛法”(Sieve of Eratosthenes)进行查找。这是一种简单而有效的找出一定范围内所有质数的经典算法。以下是实现的步骤:
1. 创建一个布尔数组,长度为范围上限+1,初始值全部设为true,表示所有数字都是潜在的质数。
2. 从2开始,将每个质数的倍数标记为非质数。这里的倍数包括它自身,因为除了1以外,所有的质数都不能被其他质数整除。
3. 遍历数组,遇到仍然标记为true的数,就是该范围内的质数,将其输出。
下面是Java代码实现:
```java
public class Main {
public static void main(String[] args) {
int start = 100;
int end = 300;
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; // 标记 i 的倍数为非质数
}
}
}
for (int i = start; i <= end; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
}
```
当运行这段代码,它会在控制台打印出100到300之间的所有质数。
阅读全文