哥德巴赫猜想是:任何大於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))



在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章