主题:一道pascal的程序
1l2j3y
[专家分:0] 发布于 2009-07-31 22:10:00
在一次竞赛中,已知甲、乙、丙、丁四人分获前四名。在公布前,他们互相猜测:
甲说:乙会获得第一名;
乙说:丁会获得第二名;
丙说:甲会获得第二名;
丁说:丙不会获得第三名。
其中,只有获得第一名和第三名的两个人猜对了,编程判断甲、乙、丙、丁各获得第几名。
最后更新于:2009-07-31 22:19:00
回复列表 (共1个回复)
沙发
小田甜 [专家分:3910] 发布于 2009-08-01 22:03:00
var
a,b,c,d:byte;
begin
for a:=1 to 4 do
for b:=1 to 4 do if b<>a then
for c:=1 to 4 do if (c<>a) and (c<>b) then begin
d:=10-a-b-c;
if (odd(a)=(b=1)) and (odd(b)=(d=2)) and
(odd(c)=(a=2)) and (odd(d)=(c<>3)) then
writeln(a,' ',b,' ',c,' ',d);
end;
writeln;
end.
我来回复