请用【java】帮我写求1-200内的素数
时间: 2024-09-28 19:07:24 浏览: 29
在Java中,我们可以编写一个函数来找出1到200之间的所有素数。这里是一个简单的示例,我们将使用“埃拉托斯特尼筛法”来找到这些素数:
```java
public class PrimeNumbers {
public static void main(String[] args) {
int limit = 200;
boolean[] isPrime = new boolean[limit + 1]; // 真值数组用于标记是否为素数
for (int i = 2; i <= Math.sqrt(limit); i++) {
if (isPrime[i]) { // 如果i是素数
for (int j = i * i; j <= limit; j += i) { // 将i的倍数标记为非素数
isPrime[j] = false;
}
}
}
// 输出素数
for (int i = 2; i <= limit; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
}
```
这个程序首先创建一个布尔数组`isPrime`,初始值全部设为`true`。然后从2开始遍历,如果当前数字是素数,就将它的所有倍数标记为非素数。最后,我们只打印出那些被标记为素数的数字。
阅读全文