用Java语言编写一个应用程序在屏幕上输出1000之内的素数。(共168个)
时间: 2024-10-08 20:13:46 浏览: 34
在Java中,我们可以使用埃拉托斯特尼筛法(Sieve of Eratosthenes)来找出1000之内的所有素数。这是一种简单而有效的算法,它通过不断排除合数,最终得到素数序列。以下是对应的Java代码:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int limit = 1000;
boolean[] isPrime = new boolean[limit + 1];
// 将所有数标记为素数
for (int i = 2; i <= limit; i++) {
isPrime[i] = true;
}
// 根据筛法排除合数
for (int i = 2; i * i <= limit; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= limit; j += i) {
isPrime[j] = false;
}
}
}
// 输出素数
for (int i = 2; i <= limit; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
}
```
这段代码首先创建了一个布尔数组`isPrime`,初始时假设所有数都是素数。然后从2开始,将所有能被当前数整除的数标记为非素数。最后,只保留那些被标记为素数的位置,即输出的就是1000之内的素数。
阅读全文