哥德巴赫猜想实验报告
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哥德巴赫猜想实验报告
【一】任务描述
用matlab验证“哥德巴赫猜想”,即:任意一个不小于6的偶数均可表示为两个质数的和。要求输入一个不大于6的正偶数,则返回两个质数之和。
【问题分析】
首先可以通过“input”语句产生一个不大于6的正偶数N,其次寻找比N小的质数数列,记为a1,a2,a3…aj..;然后通过循环结构利用穷举法判断N-ai是否为质数,若该数不是质数,则进行循环,若N-ai 是质数,则可输出这两个质数:ai,N-ai.
【程序】
N=input('输入一个不小于6的正偶数:'); %利用input语句产生不
小于6的正偶数
a=primes(N);%产生小于N的质数序列
a
for i=1:length(a) %对数列a从a1循环到
ai,其中i指数列a的元
素个数
if max(primes(N-a(i)))==N-a(i) %如果N-a(i)为质数,则
执行下一条命令语句disp(['The two primes is ',num2str(a(i)),' and ',num2str(N-a(i))])
%显示两个质数a(i)
N-a(i)
break; %执行完命令语句则
跳出循环end %判断终止
end %循环终止
【运行结果】
我们在matlab命令窗口中运行该程序,输入偶数14,28出现以下结果:
输入一个不小于6的正偶数:14
The two primes is 3 and 11
输入一个不小于6的正偶数:28
The two primes is 5 and 23
【结果分析与说明】
经过我们多次运行该程序,输入不同的偶数(>=6)皆可输出两个质数,且这两个质数之和等于该偶数。故可说明该程序可验证哥德巴赫猜想的正确性以及该程序的可操作性。