输出100以内的素数并以每一行五个输出
时间: 2023-09-04 12:09:22 浏览: 40
很高兴回答您的问题。以下是程序代码:
```python
count = 0
for num in range(2, 101):
prime = True
for i in range(2, num):
if num % i == 0:
prime = False
break
if prime:
print(num, end=' ')
count += 1
if count % 5 == 0:
print()
```
输出结果为:
```
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
```
希望能够解决您的问题,如果还有其他问题,请随时向我提出。
相关问题
100以内全部素数并输出,每行输出5个
以下是一种方法:
```python
import numpy as np
# 生成100以内的素数数组
primes = np.arange(2, 100)
is_prime = np.ones_like(primes, dtype=bool)
for p in primes:
if is_prime[p-2]:
is_prime[(primes % p == 0) & (primes > p)] = False
# 输出前5个素数
print(primes[is_prime][:5])
```
输出:
```
[ 2 3 5 7 11]
```
其中用到了 NumPy 库的一些高级数组操作。首先生成一个长度为 98 的一维数组 `primes`,包含 2 到 99 内的所有整数。接着生成一个与 `primes` 同形状、数据类型为布尔型的数组 `is_prime`,每个元素代表对应位置的数是否为素数,初始值都为 `True`。接着从小到大遍历 `primes` 中的所有整数,如果某个数是素数,就将其倍数处的 `is_prime` 设为 `False`,表示它们不是素数。这样做后,再从 `primes` 取出所有 `is_prime` 为 `True` 的元素,即为 2 到 99 内的所有素数。最后取前 5 个输出即可。
Python输出100以内素数,每行输出5个
好的,以下是Python代码实现:
```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
count = 0
for i in range(2, 101):
if is_prime(i):
print(i, end=' ')
count += 1
if count % 5 == 0:
print()
```
输出结果如下:
```
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
```