连续质数计算 Python

描述

补充编程模板中代码,完成如下功能:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

获得用户输入数字N,计算并输出从N开始的5个质数,单行输出,质数间用逗号,分割。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

注意:需要考虑用户输入的数字N可能是浮点数,应对输入取整数;最后一个输出后不用逗号。‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬

输入输出示例

 输入输出
示例 1
12
13,17,19,23,29

解析思路:

1、N要是整数,如果是浮点数,要转换成比自己大的最小的整数

a = int(n)
a = a + 1 if a < n else a

2、输出正好5个质数,定义一个计数器

count = 5

3、判断是否是质数,写个函数prime()

4、根据返回值是否是质数a都要+1,如果是质数,count-1

5、输出时最后一个不带逗号,其他都带

 (1)

t = ""
...
t += "{},".format(str(a))
...
print(t[:-1]) #最后一个字符,不输出

  (2)

t = []
...
t.append(str(a))
...
print(','.join(t))
#使用列表的方式输出带有逗号的5个质数,最后用一个','.join(str)就可以了

代码如下:

#ContinuousPrimeNumCal.py

def prime(m):
    flag = 0                 #定义一个标记,便于根据返回值判断是否是质数
    for i in range(2,m):
        if m % i == 0:
            flag = 1
            break 
    return flag
    
n = eval(input())
a = int(n)                   #强制转换为整数
a = a + 1 if a < n else a    #输出一个比n本身要大的整数,
                             #切记前面的a = a + 1不要写成a += 1,输出会不对的
count = 5                    #用于成功输出一个符合要求的质数的计数器
t = ""
while count > 0:
    if prime(a) == 0:
        t += "{},".format(str(a))
        count -= 1           #只有是质数方可减一
    a += 1                   #无论是否是质数均加一
print(t[:-1])

 

  • 41
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值