Python编写程序实现打印m到n范围以内的素数。(要求:要有异常处理,一行只能输出8个)
时间: 2023-12-10 19:39:55 浏览: 96
输出1到n之间的素数
5星 · 资源好评率100%
以下是实现该功能的Python代码,使用了try-except语句进行异常处理,并且每行只输出8个素数。
```python
import math
def is_prime(num):
"""
判断一个数是否为素数
"""
if num < 2:
return False
for i in range(2, int(math.sqrt(num))+1):
if num % i == 0:
return False
return True
try:
m = int(input("请输入m的值:"))
n = int(input("请输入n的值:"))
if m >= n:
raise ValueError("输入错误:m应该小于n!")
count = 0 # 记录已经输出的素数数量
for i in range(m, n+1):
if is_prime(i):
count += 1
print(i, end='\t')
if count % 8 == 0: # 每行输出8个素数
print()
if count % 8 != 0: # 最后一行不足8个素数时,换行
print()
except ValueError as e:
print(e)
```
在运行程序时,会要求输入m和n的值,例如:
```
请输入m的值:1
请输入n的值:50
```
程序会输出m到n范围以内的素数,并且每行只输出8个素数,例如:
```
2 3 5 7 11 13 17 19
23 29 31 37 41 43 47
```
阅读全文