讨论 / 为什么?????
wjywbs 2008-08-03 23:58:00
点我顶贴 收藏 删除
为什么

75373.pas(49,20) Error: Incompatible types: got "Boolean" expected "LongInt"???

我的程序:

program E1_3; {point24}

type arr=array [1..4] of integer;

var i,result,n,len:integer;bbb:ansistring;

d:arr;

r:array [1..3,1..4] of integer;

procedure print;

var i,j:integer;

begin

write(’yes’);

end;

procedure try(k:integer;d:arr);

var a,b,i,j,l,t:integer;

e:arr;

begin

if k=1 then if d[1]=24 then begin print;halt end else

else

begin

for i:=1 to k-1 do

for j:=i+1 to k do

begin

a:=d[i]; b:=d[j];

if a<b then begin t:=a;a:=b;b:=t end;

t:=0;

for l:=1 to k do if (l<>i) and (l<>j) then begin t:=t+1;e[t]:=d[l] end;

r[5-k,1]:=a;

r[5-k,3]:=b;

r[5-k,4]:=-1;

for l:=1 to 4 do

begin

case l of

1:r[5-k,4]:=a+b;

2:r[5-k,4]:=a-b;

3:r[5-k,4]:=a*b;

4:if b<>0 then if a mod b=0 then r[5-k,4]:=a div b

end;

r[5-k,2]:=l;

if r[5-k,4]<>-1 then

begin

e[t+1]:=r[5-k,4];

try(k-1,e)

end

end

end

end;

end;

begin

for i:=1 to 4 do begin read(bbb);

if bbb=’A’ then d[i]:=1

else if ord(bbb[1])>=48 and ord(bbb[1])<=58 then d[i]:=ord(bbb[1])-48

else if bbb=’J’ then d[i]:=11

else if bbb=’Q’ then d[i]:=12

else if bbb=’K’ then d[i]:=13;

end;

try(4,d);

writeln(’no’);

end.

查看更多回复
提交回复