编写应用程序求100以内的全部素数,用Java
时间: 2024-10-16 19:16:56 浏览: 38
java代码-求100内所有偶素的和
编写一个Java程序来找出100以内的所有素数,可以采用常见的“筛法”算法,也叫埃拉托斯特尼筛。以下是简单的步骤:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int limit = 100;
boolean[] isPrime = new boolean[limit + 1];
for (int i = 2; i <= limit; i++) {
isPrime[i] = true; // 初始假设每个数字都是素数
}
for (int p = 2; p * p <= limit; p++) {
// 如果isPrime[p]仍然为真,则p是一个素数
if (isPrime[p]) {
// 标记p的所有倍数为非素数
for (int i = p * p; i <= limit; i += p)
isPrime[i] = false;
}
}
// 打印出所有的素数
System.out.println("100以内的素数有:");
for (int i = 2; i <= limit; i++)
if (isPrime[i])
System.out.print(i + " ");
}
}
```
在这个程序中,我们首先创建一个布尔数组`isPrime`,用于标记每个数字是否为素数。然后遍历从2到sqrt(100),如果当前数字`p`是素数,就将它的所有倍数标记为合数。最后,打印出那些标记为素数的数字。
阅读全文