能不能用Java写一个100以内的素数?
时间: 2023-09-17 15:05:08 浏览: 147
Java 求100以内的素数
4星 · 用户满意度95%
### 回答1:
可以的,下面是一个用Java写的100以内的素数程序:
public class PrimeNumber {
public static void main(String[] args) {
int num;
boolean isPrime;
for(num = 2; num <= 100; num++) {
isPrime = true;
for(int i = 2; i <= num/2; i++) {
if((num % i) == 0) {
isPrime = false;
break;
}
}
if(isPrime)
System.out.println(num + " ");
}
}
}
### 回答2:
能够用Java写一个100以内的素数。
素数是除了1和本身以外没有其他因数的整数。我们可以通过遍历2到100之间的所有整数,判断每个数是否为素数。具体步骤如下:
1. 创建一个布尔类型的数组isPrime,用于标记每个数是否为素数。初始化数组中的所有元素为true。
2. 遍历2到100之间的每个整数i。
3. 对于每个数i,判断isPrime[i]是否为true,如果是则将i输出,因为素数的条件是isPrime[i]为true。
4. 对于每个素数i,将isPrime[i]之后的所有i的倍数设置为false,因为这些数都能被i整除,不是素数。
5. 完成遍历后,输出的即为100以内的素数。
以下是使用Java代码实现上述算法的例子:
```
public class PrimeNumbers {
public static void main(String[] args) {
boolean[] isPrime = new boolean[101];
for (int i = 2; i <= 100; i++) {
isPrime[i] = true;
}
for (int i = 2; i <= 100; i++) {
if (isPrime[i]) {
System.out.print(i + " ");
for (int j = i * i; j <= 100; j += i) {
isPrime[j] = false;
}
}
}
}
}
```
运行以上代码,将输出2到100之间的所有素数。
阅读全文