哥德巴赫猜想是:任何大于2的偶数都能用两个素数相加得到。那么500表示两个素数的和有 种 情况。注意:3+5 和 5+3 是一样的,不考虑顺序

import math
def fun(n):
    L=[2]
    for x in range(2,n+1):
        for i in range(2,x):
            if x%i==0:
                break
            else:
                pass

            if(i>math.sqrt(x)):  #if(i==x-1):   效果一样
                # print(x,",是一个质数")
                L.append(x)
                break
    #计数
    c=0
    for i in L:
        for j in L:
            if i+j==n:
                print("%d+%d=%d"%(i,j,n))
                c+=1

    #输出有多少种情况
    if c%2==0:
        return  c//2
    else:
        return  (c+1)//2

if __name__ == '__main__':
    print(fun(500))



在这里插入图片描述

发布了51 篇原创文章 · 获赞 5 · 访问量 2133

猜你喜欢

转载自blog.csdn.net/weixin_44659084/article/details/103745645