连续质数计算python

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

输入输出示例

 

输入

输出

示例 1

12

13,17,19,23,29

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

既然要输出质数,那么首先就要编写一个判断数字是否是质数的函数

判断输入数字是否为质数
def decide_prime (n) :
    if n == 1 :
        return False
    import math
    i = 2
    while (i != n):
        if int (n) % i == 0 :
            return False
        i = i + 1
    return True

算法很简单,这里就不再赘述。这里注意,1不讨论是否为质数,因此当作非质数处理,返回‘False’。

主函数:根据用户输入数字利用循环找出五个质数分别输出,在最后一次输出时不输出‘,’。只有找到质数时,才给i+1,保证输出的数字一定为5个

连续质数计算
import sys
sys.path.append('D:\\study\\python\\zhishu\\decide_prime')
import decide_prime as de
number = input("请输入任意数字")
number = float(number)
i = 0
while (i != 5) :
    if de.decide_prime(int(number)) :
        if i < 5:
            print("{},".format(int(number)),end='')
        else :
            print("{}".format(int(number)))
        i += 1
    number += 1

由于我将主函数和子函数写到了两个文件夹里面,因此引用了sys.path.append()函数用来调用其他文件中的函数,这个方法也推荐给读者朋友们。

以下是运行结果:

连续质数计算python_第1张图片

在测试程序的时候,尽量多运行几次,试试不同的情况(尽量特殊一点),这样可以提高程序的准确性,也更容易发现bug

你可能感兴趣的:(python)