养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

【Mathematica】把偶数写成两个素数的和

时间:2024-10-20 00:26:14

哥德巴赫猜想指出,每一个大于4的偶数,都可以写成两个素数的和。本文,用Mathematica来测试这个猜想,并且实现可视化效果。

【Mathematica】把偶数写成两个素数的和

工具/原料

电脑

Mathematica

方法/步骤

1、先枚举2n拆分成两个素数和的方法:pr[n_]:=锓旆痖颧DeleteCases[If[PrimeQ[#]&&PrimeQ[2*n幻腾寂埒-#],{#,2*n-#},0]&/@Range[3,n,2],0]那么,容易验证160有8种分拆方法:pr[80]

【Mathematica】把偶数写成两个素数的和

2、可视化,就是把这些点画出来:ListPlot[pr[80],AspectRatio->Automatic]//Image

【Mathematica】把偶数写成两个素数的和

3、把6到160之间所有的偶数,全部分拆:points=pr[#]&/@Range[6,160,2]

【Mathematica】把偶数写成两个素数的和

4、把这些点画出来:ListPlot[points,AspectRatio->Automatic]

【Mathematica】把偶数写成两个素数的和

5、600到100廴类锾渭0之间的偶数分拆:ListPlot[pr[#]&/@Range[300,50扉钛笆哇0,2],PlotRange->{300,1000},AspectRatio->Automatic]

【Mathematica】把偶数写成两个素数的和

6、2000到2200之间的偶数分拆:ListPlot[pr[#]&/@Range[1000,1100,2],PlotRange->{1000,2200}]

【Mathematica】把偶数写成两个素数的和

7、考察分拆的方法数目:Show[ListPlot[{#,Length[pr职邗珩垃[#]]}&/@Range[6,100,2],PlotStyle->Orange],ListLin髫潋啜缅ePlot[{#,Length[pr[#]]}&/@Range[6,100,2]]]

【Mathematica】把偶数写成两个素数的和

8、把直角坐标转化为极坐标:Length[pr[#]]*{Cos[#Degree],Sin[#Degree]}

【Mathematica】把偶数写成两个素数的和

9、Length[pr[#]]*{Cos[2#Degree],Sin[2#Degree]}:

【Mathematica】把偶数写成两个素数的和

10、把6到7200之间的偶数分拆,方法数转化为极坐标形式的可视化:Length[pr[#]]*{Cos[2#Degree],Sin[2#Degree]}&/@Range[6,3600,2]

【Mathematica】把偶数写成两个素数的和

© 一点知识