用JDK 打印一个求 1 到 100 之间的素数的程序
时间: 2024-09-19 07:02:03 浏览: 16
在Java中,我们可以编写一个简单的程序来打印1到100之间的素数。素数是指只有两个正因数(1和自身)的自然数,例如2、3、5、7等。下面是一个使用循环和条件判断来实现这个功能的例子:
```java
public class PrimeNumbers {
public static void main(String[] args) {
for (int num = 2; num <= 100; num++) { // 循环从2开始,因为1不是素数
boolean isPrime = true;
for (int i = 2; i <= Math.sqrt(num); i++) { // 只需检查到num的平方根即可,如果超过这个范围已经不可能有因子了
if (num % i == 0) { // 如果num能被i整除,则num不是素数
isPrime = false;
break;
}
}
if (isPrime) { // 如果isPrime仍为true,说明num是素数
System.out.println(num);
}
}
}
}
```
运行这个程序,你会看到控制台输出1到100之间的所有素数。
相关问题
用JDK 写一个求 1 到 100 之间的素数的程序
当你想用Java编写一个求1到100之间素数的程序时,可以使用一种常见的算法,如“埃拉托斯特尼筛法”(Sieve of Eratosthenes)。以下是一个简单的Java代码示例:
```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 i = 2; i * i <= limit; i++) {
if (isPrime[i]) {
for (int j = i * i; j <= limit; j += i) {
isPrime[j] = false;
}
}
}
// 输出素数
System.out.println("素数列表:");
for (int i = 2; i <= limit; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
}
}
}
}
```
这个程序首先创建了一个布尔数组`isPrime[]`,表示每个数字是否是素数。然后从2开始,将所有数字标记为素数。接着遍历数组,如果当前数字i是素数,则将其倍数标记为非素数。最后,打印出所有剩余标记为true的数字,即为1到100之间的素数。