验证哥德巴赫猜想:任意一个大于2的偶数可以表示成2个素数之和。编写一个函数isGBH(n)将传入的6-100之间的偶数表示为2个素数之和,结果保存在列表中返回。

验证哥德巴赫猜想:任意一个大于2的偶数可以表示成2个素数之和。编写一个函数isGBH(n)将传入的6-100之间的偶数表示为2个素数之和,结果保存在列表中返回。

问题描述:

验证哥德巴赫猜想:任意一个大于2的偶数可以表示成2个素数之和。编写一个函数isGBH(n)将传入的6-100之间的偶数表示为2个素数之和,结果保存在列表中返回。例如传入参数10,则返回["10=3+7","10=5+5"]。

你题目的解答代码如下:

def isprime(n):
    if n<=1:
        return False
    for i in range(2,n):
        if n%i==0:
            return False
    return True

def isGBH(n):
    if n<=2 or n%2!=0:
        return "n不是大于2的偶数"
    li = []
    for i in range(2,n//2+1):
        if isprime(i) and isprime(n-i):
            li.append(f"{n}={i}+{n-i}")
    return li

n = int(input("请输入一个整数n:"))
print(isGBH(n))

如有帮助,望采纳!谢谢!