连续质数计算
描述
补充编程模板中代码,完成如下功能:
获得用户输入数字N,计算并输出从N开始的5个质数,单行输出,质数间用逗号,分割。
注意:需要考虑用户输入的数字N可能是浮点数,应对输入取整数;最后一个输出后不用逗号。
示例:
输入 | 输出 |
---|---|
12 | 13,17,19,23,29 |
代码:
def is_prime(m): # 定义一个函数,用于判断是否为质数,是就返回True,否则False
for i in range(2,m):
if m%i == 0:
return False
return True
count = 0
str1 = ''
n1 = eval(input())
n2 = round(n1,0)
n = int(n2)
n = 2 if n<= 2 else n # 使得输入的数小于2的直接等于2
while count < 5: # 输出5个数,使用循环计数
if is_prime(n):
str1 += f'{n},' # 将满足要求的质数添加到字符串中用逗号隔开
count += 1 # 满足一个质数条件就记一次数
n += 1 # 将输入的值加一,不断的去判断是否为质数
print(str1[:-1]) # 去掉字符串中最后一个逗号
测试输入输出
1
2,3,5,7,11
13.5
17,19,23,29,31
-1
2,3,5,7,11
12
13,17,19,23,29