编程实现输出100以内的所有素数每行输出5个数 并生成代码
时间: 2023-09-12 10:11:44 浏览: 206
以下是使用 Python 语言编写的程序,可以输出100以内的所有素数,每行输出5个数:
```python
count = 0
for num in range(2, 101):
if all(num % i != 0 for i in range(2, int(num**0.5)+1)):
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
```
代码解释:
- 变量 `count` 用于计数,每输出一个素数就将其加1。
- `range(2, 101)` 表示在2到100的范围内循环,检查每个数是否为素数。
- 判断一个数 `num` 是否为素数的方法是:对于 `num` 的每个可能因子 `i`,如果 `num` 能够被 `i` 整除,则 `num` 不是素数;如果所有可能因子都不能整除 `num`,则 `num` 是素数。为了加快判断速度,只需要检查从2到 `num` 的平方根(取整后向上取整)的所有数作为可能因子即可。
- `print(num, end=' ')` 表示输出一个素数并在后面加一个空格,`end=' '` 表示不换行。
- `if count % 5 == 0: print()` 表示每输出5个素数就换行。`count % 5 == 0` 表示 `count` 是5的倍数。`print()` 表示输出一个空行,相当于换行符。
阅读全文