哪位高手帮我看一下这段pascal程序有什么错误?

来源:百度知道 编辑:UC知道 时间:2024/05/22 16:22:57
program boldbach(input,output);
var
n,a,b,x:integer;
flag:boolean;
yes:char;
begin
repeat
repeat
writeln('input any even_number');
read(n);
until (n>4) and ( not odd(n) );
flag:=false;
for a:=2 to n do
for x:=2 to a-1 do
if (a mod x <> 0)
then flag:=true;
x:=0;
if flag
then b:=n-a;
for b:=2 to n do
for x:=2 to b do
if (b mod x <> 0)
then flag:=true;
if flag
then writeln(n,'=',a,'+',b);
writeln ('continue?(Y/N)?');
read(yes);
until (yes='n') or (yes='N');
end.
哥德巴赫猜想的,拜托!!!!!!!!!

你貌似是想从小到大枚举奇质数a,然后判断n-a是否也是奇质数
大repeat循环修改如下
repeat
repeat
writeln('input any even_number');
read(n);
until (n>4) and ( not odd(n) );
for a:=3 to n-3 do
begin
flag:=true;
for x:=2 to a-1 do
if (a mod x = 0)
then begin flag:=false; break;end;
if flag
then
begin
b:=n-a;
flag:=true;
for x:=2 to b-1 do
if (b mod x = 0)
then begin flag:=false; break;end;
if flag
then
begin
writeln(n,'=',a,'+',b);
break;
end;
writeln ('continue?(Y/N)?');
read(yes);
until (yes='n') or (yes='N');