begin integer I, J, CASE; real X, Y; procedure REQUAL(A, B); value A, B; real A, B; if A ≠ B then begin OUTREAL(99, A); OUTREAL(99, B); OUTREAL(99, CASE) end else CASE ≔ CASE + 1; CASE ≔ 1; X ≔ 2·0; Y ≔ 3·0; I ≔ 2; J ≔ 3; REQUAL(X⭡I, 4·0); if I⭡J ≠ 8 then begin OUTREAL(99, I⭡J); OUTREAL(99, 8); end; REQUAL(X⭡0, 1·0); if I⭡0 ≠ 1 then begin OUTREAL(99, I⭡0); OUTREAL(99, 1) end; REQUAL(X⭡( - I), 1·0 / (2·0 × 2·0)); REQUAL(I⭡( - I), 1·0 / (2·0 × 2·0)); REQUAL(X⭡Y, EXP(Y × LN(X))); REQUAL(J⭡Y, EXP(Y × LN(J))); REQUAL(0·0⭡X, 0·0); REQUAL(0⭡X, 0·0); comment SHOULD FAIL; REQUAL(( - X)⭡Y, - 1) end