用Java编写程序,求2~1000内所有的素数,并按每行五列的格式输出
时间: 2024-10-20 17:03:40 浏览: 16
在Java中,你可以使用Sieve of Eratosthenes算法来找出2到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 * i <= limit; i++) {
if (!isPrime[i]) {
for (int j = i * i; j <= limit; j += i) {
isPrime[j] = true;
}
}
}
// 输出素数
for (int i = 2; i <= limit; i++) {
if (!isPrime[i]) continue;
System.out.print(i + " ");
if ((i % 5 == 0 && i != limit) || (i == limit)) { // 按每行五列打印
System.out.println(); // 结束当前行
}
}
}
}
```
这个程序首先初始化一个布尔数组`isPrime`,然后遍历从2开始的数,如果一个数不是素数,就将它的倍数标记为合数。接着,循环输出并按每行五个数打印素数。
阅读全文