求指定的两个整数m、n之间的素数(m<=n) 输入:只有一行,是空格隔开的两个正整数m和n。(m<=n) 输出:在m和n之间(含m和n)的所有素数,按照每个数据占6列,每行5个数据输出,注释
时间: 2024-02-09 20:11:09 浏览: 94
好的,以下是带有注释的 Python 代码实现:
```python
# 读入两个整数 m 和 n
m, n = map(int, input().split())
# 判断一个数是否为素数的函数
def is_prime(num):
# 小于 2 的数不是素数
if num < 2:
return False
# 判断 num 是否能被 2 到 sqrt(num) 之间的任何一个数整除
for i in range(2, int(num**0.5)+1):
if num % i == 0:
return False
# 如果上述条件都不满足,则 num 是素数
return True
# 计数器,用于控制输出格式
count = 0
# 遍历 m 到 n 之间的所有整数
for i in range(m, n+1):
# 如果 i 是素数
if is_prime(i):
# 按照格式输出 i
print("{:6d}".format(i), end='')
# 计数器加 1
count += 1
# 如果已经输出了 5 个数,就换行
if count == 5:
print()
count = 0
# 如果最后一行没有输出 5 个数,就换行
if count != 0:
print()
```
这段代码首先读入两个整数 m 和 n,然后定义了一个函数 is_prime,用于判断一个数是否为素数。接着使用一个计数器 count,遍历 m 到 n 之间的所有整数,对于每个整数 i,如果它是素数,则按照格式输出它,并将计数器 count 加 1。如果已经输出了 5 个数,就换行。最后,如果最后一行没有输出 5 个数,就再换行。
阅读全文