MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   【求助】如何用matlab做一个验证哥德巴赫猜想的程序? (https://www.labfans.com/bbs/showthread.php?t=1415)

proportion 2008-02-20 18:10

【求助】如何用matlab做一个验证哥德巴赫猜想的程序?
 
如何用matlab做一个验证哥德巴赫猜想的程序?

mathjiang 2008-02-20 21:28

这个问题不难,试作一下。

proportion 2008-02-21 01:01

来灌水的啊,至少给个提示吧。

proportion 2008-03-01 21:30

先做一个判断合质数的函数:
function k=zhs(x)
k=1;
if x<=1
disp('error!')
k=-1;
return
end
if x>=4
for i=2:sqrt(x)
if mod(x,i)==0
k=0;
break
end
end
end

proportion 2008-03-01 21:32

判断单个大偶数是否成立:
x=input('x=')
if mod(x,2)>0|x<6
disp('data error!')
return
end
for i=2:x./2
k=zhs(i);
k1=k;
k=zhs(x-i);
k2=k;
if k1>=1&k2>=1;
fprintf('%.0f=%.0f+%.0f\n',x,i,x-i)
break
end
end

proportion 2008-03-01 21:33

判断从6到上限x的大偶数是否成立:
clear;clc;
x=input('x=')
n=0;
t=x./2-2;
if mod(x,2)>0|x<6
disp('data error!')
return
end
for m=2*(3:x./2)
for i=2:m./2
k=zhs(i);
k1=k;
k=zhs(m-i);
k2=k;
if k1>=1&k2>=1;
n=n+1;
fprintf('%.0f %.0f=%.0f+%.0f\n',n,m,i,m-i)
break
end
end
end
if n>=t&n<=t;
disp('the numbers which have been examed are all correct!')
elseif n>t|n<t;
disp('it is wrong!')
end

proportion 2008-03-02 01:41

老大,看在俺积极响应倡议的份上,加下lab币撒。

proportion 2008-03-02 01:45

呵呵,谢了。

two_star 2016-03-27 01:58

回复: 【求助】如何用matlab做一个验证哥德巴赫猜想的程序?
 
这是判断10000以内成立的代码:
clear;
E = primes(10000);
num = 0;
for x = 2:2:10000
for i = 1:length(E)
if ismember( x - E(i),E) == 1
num = num + 1;
end
end
end


所有时间均为北京时间。现在的时间是 14:19

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.