当前位置:   article > 正文

python语言实现素数判断及打印素数的几种方法_python判断素数

python判断素数

一、素数的定义

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

二、素数判断

方法一:

def sushu(a):
    if a <= 1:
        print(f"{a}不是素数")
    else:
        for i in (2, a + 1):
            if a % i == 0:
                break
        if i >= a:
            print(f"{a}是素数")
        else:
            print(f"{a}不是素数")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

方法二:

def sushu2(b):
    if b <= 1:
        print(f"{b}不是素数")
    else:
        j = 2
        # 素数是除了一和本身以外不能被其他任何整数整除的整数
        while j <= b - 1:
            # 只要有一个能被整数的就不是素数
            if b % j == 0:
                break
            # 依次除以2,3,4,5,,,m-1
            j = j + 1
        if j > (b - 1):
            print(f"{b}是素数")
        else:
            print(f"{b}不是素数")

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

三、打印素数

方法一:

1、打印指定范围内的素数

def sushu3(c):
    import math
    m = 2
    List = []
    while m < c:
        j = 2
        # 只要从2判断到根号m,若m不能被其中的任何一个数整除,则m为素数
        while j <= math.sqrt(m):
            if m % j == 0:
                break
            j = j + 1
        if (j > math.sqrt(m)):
            List.append(m)
        m = m + 1
    print(f"{c}以内的素数:{List}")

    
 # 调用方法sushu3方法,打印100以内的素数
if __name__ == '__main__':
    sushu3(100)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

方法二:

2、打印指定区间内的素数

def sushu4():
    Min = int(input("请输入起始值:"))
    Max = int(input("请输入终止值:"))
    List = []
    # 循环遍历指定区间内的数
    for i in range(Min, Max + 1):
        if i > 1:
           # 除了1和本身以外的数,如果能被除则break退出
            for j in range(2, i):
                if (i % j) == 0:
                    break
            # 若不能被1和本身的数除则追加到List列表
            else:
                List.append(i)
    print(f"{Min}~{Max}区间内的素数有:{List}")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/539998
推荐阅读
相关标签
  

闽ICP备14008679号