Java写1-1000所有的质数
时间: 2024-11-20 13:40:41 浏览: 10
Java编写一个找出1到1000范围内所有质数的程序,可以使用经典的“埃拉托斯特尼筛法”(Sieve of Eratosthenes)。以下是简单的代码示例:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int n = 1000;
boolean[] isPrime = new boolean[n + 1];
for (int i = 2; i * i <= n; i++) {
if (isPrime[i]) {
// Mark multiples of i as non-prime
for (int j = i * i; j <= n; j += i)
isPrime[j] = false;
}
}
// Print all prime numbers between 1 and n
System.out.println("Prime numbers from 1 to " + n + " are:");
for (int i = 2; i <= n; i++)
if (isPrime[i])
System.out.print(i + " ");
}
}
```
这个程序首先创建一个布尔数组`isPrime`,用于标记每个数字是否是质数。然后从2开始遍历到`sqrt(n)`,如果当前数字是质数,则将其倍数标记为非质数。最后,打印出所有未被标记为非质数的数字。
阅读全文