这哪错了
freepascal吧
全部回复
仅看楼主
level 1
rt
2017年06月18日 09点06分 1
level 1
VAR
S,D:LONGINT;
B:BOOLEAN;
R,K:ARRAY[1..4]OF INTEGER;
I,X:ARRAY[1..7]OF LONGINT;
BEGIN
FOR D:=1 TO 4 DO READ(R[D]);
//=====================================================================//
FOR I[1]:=1 TO 3 DO
FOR I[2]:=1 TO 3 DO
FOR I[3]:=1 TO 3 DO
FOR I[4]:=1 TO 4 DO
FOR I[5]:=1 TO 4 DO
IF I[4]<>I[5]THEN
FOR I[6]:=1 TO 4 DO
IF(I[4]<>I[5])AND(I[4]<>I[6])AND(I[5]<>I[6])THEN BEGIN
I[7]:=10-I[6]-I[5]-I[4];
{++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++}
IF I[1]=1 THEN S:=R[I[4]]+R[I[5]] ELSE IF I[1]=2 THEN S:=R[I[4]]-R[I[5]] ELSE S:=R[I[4]]*R[I[5]];
IF I[2]=1 THEN S:=S+R[I[6]] ELSE IF I[2]=2 THEN S:=S-R[I[6]] ELSE S:=S*R[I[6]];
IF I[3]=1 THEN S:=S+R[I[7]] ELSE IF I[3]=2 THEN S:=S-R[I[7]] ELSE S:=S*R[I[7]];
{++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++}
IF S=24 THEN BEGIN B:=TRUE; FOR D:=1 TO 7 DO X[D]:=I[D];END;
END;
//=====================================================================//
IF B=FALSE THEN WRITELN('error')
ELSE BEGIN
WRITE(R[X[4]]);
IF X[1]=1 THEN WRITE('+')ELSE IF X[1]=2 THEN WRITE('-')ELSE WRITE('*');
WRITE(R[X[5]]);
IF X[2]=1 THEN WRITE('+')ELSE IF X[2]=2 THEN WRITE('-')ELSE WRITE('*');
WRITE(R[X[6]]);
IF X[3]=1 THEN WRITE('+')ELSE IF X[3]=2 THEN WRITE('-')ELSE WRITE('*');
WRITELN(R[X[7]]);
END;
END.
2017年06月18日 09点06分 2
1