主题:边个甘聪明帮下我???
6yangweihua
[专家分:180] 发布于 2005-06-09 21:03:00
输入一个大于4的偶数,它可以分成两个素数的和???如果满足条件,输出N=I+J的形式。如果不存在,输出‘NO’,谢谢!!![em10][em41]
回复列表 (共4个回复)
沙发
zhsas [专家分:1680] 发布于 2005-06-10 00:10:00
哥德巴赫猜想:对任一充分大的偶数n,可以找到两个素数p,q.使得n=p+q.
这里只是对有限范围内的数,用计算机加以验证,不算严格证明.
program zhs (input,output);
var
i,n,p,q:integer;
flagp,flagq:boolean;
begin
read(n);
p:=1;
repeat
p:=p+1;
q:=n-p;
flagp:=true;
for i:=2 to round(sqrt(p)) do
if p mod i = 0
then flagp:=false;
flagq:=true;
for i:=2 to round(sqrt(q)) do
if q mod i = 0
then flagq:=false
until flagp and flagq;
writeln(n,'=',p,'+',q)
end.
你的题目是不是有点问题呀?对于一个大于4的偶数总可以找到两个素数之和,不会有不存在的.所以不存在输出'NO'也就不要做了.如果题目就是这样,那你自己再加吧.
板凳
6yangweihua [专家分:180] 发布于 2005-06-11 14:15:00
但系好似不行啊???
3 楼
6yangweihua [专家分:180] 发布于 2005-06-11 14:20:00
题目讲要把这个猜想证明
4 楼
zhsas [专家分:1680] 发布于 2005-06-12 00:45:00
我上机通过了.你怎么不行呀?你输入几了?
我来回复