java用最少的循环输出100以内的质数
时间: 2023-06-11 19:07:12 浏览: 55
可以使用双重循环来实现:
```java
for (int i = 2; i <= 100; i++) {
boolean isPrime = true;
for (int j = 2; j < i; j++) {
if (i % j == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
System.out.println(i);
}
}
```
对于每个数 i,我们从 2 到 i-1 都尝试一遍是否能整除,如果找到一个能整除的数,那么 i 就不是质数。如果最后都没有找到能整除的数,那么 i 就是质数,我们就输出 i。
相关问题
使用python语言用while循环输出100以内素数
以下是使用 Python 语言实现输出 100 以内素数的代码:
```python
num = 2 # 从2开始判断
while num <= 100:
# 判断是否为素数
is_prime = True
for i in range(2, num):
if num % i == 0:
is_prime = False
break
# 输出素数
if is_prime:
print(num)
num += 1 # 判断下一个数
```
解释一下代码:
首先,我们定义一个变量 `num`,从2开始判断,一直判断到100。
然后,我们用 `is_prime` 变量来标记当前的 `num` 是否为素数。我们在 `for` 循环中遍历2到 `num - 1` 的数,如果 `num` 能被其中的一个数整除,那么说明 `num` 不是素数,将 `is_prime` 设为 `False` 并跳出循环。如果都不能整除,那么 `num` 就是素数,输出它。
最后,我们将 `num` 加1,进入下一个循环,判断下一个数是否为素数,直到 `num` 大于100结束循环。
Python用while循环输出100以内的素数
要使用while循环输出100以内的素数,可以参考以下代码:
```python
from math import sqrt
def is_prime(num):
if num <= 1:
return False
for i in range(2, int(sqrt(num)) + 1):
if num % i == 0:
return False
return True
def print_prime_numbers():
num = 2
while num <= 100:
if is_prime(num):
print(num, end=' ')
num += 1
print_prime_numbers()
```
这段代码定义了一个`is_prime`函数来判断一个数是否为素数,然后使用`print_prime_numbers`函数来输出100以内的素数。在主循环中,使用while循环来遍历2到100的数字,然后通过调用`is_prime`函数判断每个数字是否为素数,如果是素数则输出。