Python教程

python 哥德巴赫猜想

本文主要是介绍python 哥德巴赫猜想,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
""""
大于8的偶数都可拆分两个素数之和
    判断8、10、12、、、能否拆成2个素数之后
    拆分: n:m 和 n-m
    分别去判断m,n-m是否是素数  10 :
                            n     m

    8

    6

    4

"""
def isPrime(n):
    i = 2
    flag = True  ##假设是素数
    while i <= n - 1:
        # 判断i 能否把 n 整除
        if n % i == 0:  ## n被i整除了,不是素数
            flag = False
        i += 1

    return flag


def canSplit(n):
    for m in range(1,n//2 + 1 ):              ##n 拆分为:m,n - m
        if isPrime(m) and isPrime(n-m):  #判断 m ,n 是否为素数
            return True

    return False


###-------- 这是开始的地方 ---------------
flag = True # 假设 哥德巴赫猜想  成立的
for n in range(8,1000,2):
    if not canSplit(n):
        flag = False

if flag:
    print("哥德巴赫猜想 OK ")
else:
    print("哥德巴赫猜想 NO,error")
这篇关于python 哥德巴赫猜想的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!