python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python求取指定范围内的质数

python如何求取指定范围内的质数

作者:究酸橙子

这篇文章主要介绍了python如何求取指定范围内的质数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python求取指定范围内的质数

质数又称素数。

一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。

python代码

#求指定区间的质数
#输入范围下限
lower=int(input("请输入下限:"))
#输入范围上限
upper=int(input("请输入上限:"))
#循环检查范围内每一个数是否为质数
for num in range(lower,upper):
    if num>1:
        for i in range(2,num):
            if num%i==0:#判断子啊2-num范围内是否存在i能够整除num,如果存在就代表除了1和本身外它还能被其他数整除,所以不是质数。
                break#结束判断,进行下一次循环
        else:
            print(num)#输出是质数的数

假设下限为20,上限为40,输出结果为下

请输入下限:20
请输入上限:40
23
29
31
37

python多种方法求某个范围内的所有素数(质数)

素数简介

质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。

方法1

def primeNUM(min,max):
    if min==1:
        print('')
        min += 1
    for i in range(min, max+1):
        for j in range(2, i + 1):
            if i % j == 0:          #判断i能不能被整除
                break               #退出for循环
        if j == i:                  #若j等于i,说明i是素数
            print(i,end=" ")
    print('')
primeNUM(1,200)

方法2

def test(num):
    list = []              #定义一个列表 用于存储计算的数
    i = num -1             # 去除本身
    while i > 1:           # 去除1
        if num %i == 0 :   #判断是否有余数
            list.append(i) # 将所有的能整除i的数加入列表
        i -= 1
    if len(list) == 0 and num != 1:     # 如果列表为空 就是表示除了1和它本身能整除
        print(num,end=' ')
def primeNUM2(min,max):
    j = min
    while j < max:
        test(j)
        j += 1
    print('')
primeNUM2(1,100)

输出结果:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文