python 哥德巴赫猜想

2021-05-30 22:02

阅读:459

""""
大于8的偶数都可拆分两个素数之和
判断8、10、12、、、能否拆成2个素数之后
拆分: n:m 和 n-m
分别去判断m,n-m是否是素数 10 :
n m
1 9
2 8
3 7
4 6
5 5
6 4

"""
def isPrime(n):
i = 2
flag = True ##假设是素数
while i
# 判断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")


评论


亲,登录后才可以留言!