使用for循环输出3~100之间的素数(只能被1和自己整除的自然数)。
时间: 2024-10-16 17:02:38 浏览: 52
当使用 for 循环遍历 3 到 100 之间的数字时,我们可以采用一种称为“埃拉托斯特尼筛法”的算法来找出素数。这个算法的基本思想是从最小的质数(2)开始,逐步排除所有其倍数的数字,直到达到给定范围。
以下是使用 Python 实现的代码:
```python
def is_prime(n):
if n <= 1:
return False
elif n <= 3:
return True
elif n % 2 == 0 or n % 3 == 0:
return False
i = 5
while i * i <= n:
if n % i == 0 or n % (i + 2) == 0:
return False
i += 6
return True
# 输出3到100之间的素数
for num in range(3, 101):
if is_prime(num):
print(num)
```
在这个代码中,`is_prime` 函数用于判断一个数是否为素数。然后我们用 for 循环从 3 开始,对每个数调用 `is_prime` 函数,如果返回 `True`,则打印该素数。
相关问题
使用 while 循环输出2~100之间的素数(只能被1和自己整除的自然数)
好的,我知道了,您想让我使用 while 循环输出2~100之间的素数(只能被1和自己整除的自然数)。请看下面的代码:
```python
# 定义一个函数来判断是否是素数
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
# 使用 while 循环输出 2~100 之间的素数
num = 2
while num <= 100:
if is_prime(num):
print(num, end=' ')
num += 1
```
这段代码中,首先定义了一个函数 is_prime(n),用来判断一个数是否是素数。然后,使用 while 循环输出 2~100 之间的素数,具体实现方式是:对于每一个数 num,如果它是素数,则输出它,否则继续检查下一个数。在判断一个数是否是素数时,可以使用 is_prime(n) 函数来实现。
使用while循环输出2~100之间的素数(只能被1和自己整除的自然数)
```python
i = 2
while i <= 100:
j = 2
while j <= (i / j):
if i % j == 0:
break
j += 1
else:
print(i)
i += 1
```
输出结果为:
```
2
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
```
阅读全文