哥德巴赫猜想:任一大于2的偶数都可写成两个质数之和。
闲着没事就用刚学的python编段小程序看看能不能用枚举法来证明一下。
实现逻辑很简单,先定义一个判断是否是质数的函数,然后就在给定范围内的所有偶数分解为两个质数的和。
我是初学者,也没有编程经验,希望大神指正。
def fuc_prime(i):
if i>2:
for n in range(2,i):
if (i%n)==0:
break
else:return i
else:
return i
for i in range(10000):#先搞10000以内的吧
break_flag=False#设置一个flag来跳出循环,不设也可以,会将一个偶数所有的质数分解结果都列出来。
if i%2==0:
for a in range(2,i):
for b in range(2,i):
if fuc_prime(a) and fuc_prime(b) and i==(a+b):
break_flag=True
print(i,'=',a,'+',b)
break
if break_flag==True:
break