//JOB (:ERCC07.AJTESTS,P.STEPHENS_ALGOL,T=240,L=6000) //ALGOL 'BEGIN' 'REAL' X; 'INTEGER' I; I := 10000000000000000000000000; X := 1.0&999 'END' //RUN //ALGOL 'BEGIN' 'REAL' AUTOCORRELATIONCOEFFICIENTNUMBER1; AUTOCORRELATIONCOEFFICIENTNUMBER1 := 0.0; 'BEGIN' 'REAL' AUTOCORRELATIONCOEFFICIENTNUMBER2; AUTOCORRELATIONCOEFFICIENTNUMBER2 := 1.0; OUTREAL(99, AUTOCORRELATIONCOEFFICIENTNUMBER1 + AUTOCORRELATIONCOEFFICIENTNUMBER2 ) 'END' 'END' //RUN //ALGOL L1: 'BEGIN' 'IF' 1 = 2 'THEN' 'GOTO' L1 'END' //RUN //ALGOL SIN: COS: 'BEGIN' 'REAL' SIN; SIN := 0.0 'END' //RUN //ALGOL L1: 'IF' 1 = 2 'THEN' 'GOTO' L1 //RUN //ALGOL 'BEGIN' 'INTEGER' X, Y, Z; X := Y := Z := 1.0; 'IF' X < Y < Z 'THEN' 'END' //RUN //ALGOL 'BEGIN' 'BOOLEAN' ASSIGN; 'PROCEDURE' P(X); 'REAL' X; 'BEGIN' OUTREAL(99, X); 'IF' ASSIGN 'THEN' X := 3.14; 'END'; 'REAL' X, Y; ASSIGN := 'FALSE'; P(1.0); X := Y := 2.0; P(X + Y); ASSIGN := 'TRUE'; P(X); P(1.0); OUTREAL(99, 1.0) 'END' //RUN //ALGOL 'BEGIN' 'REAL' X, Y; X := Y := 0.0; 'REAL' Z; 'END' //RUN //ALGOL 'BEGIN' 'COMMENT' A SYNTAX PASS IS REQUIRED TO REMOVE COMMENTS; 'PROCEDURE' P( ST );'COMMENT' ST IS A STRING;'COMMENT'; 'STRING' ST; ;'COMMENT' DUMMY BODY; P( <;'COMMENT'<;>> ); 'BEGIN' 'PROCEDURE' Q( A ) PARAMETER COMMENT :( B ); 'REAL' A, B; ;'COMMENT' DUMMY AGAIN; Q( 1.0, 2.5 ); 'COMMENT' IS THE SAME AS; Q( 1.0) WITH PARAMETER COMMENT:( 2.5 ); 'END' COMMENT CAN INCLUDE MOST BASIC SYMBOLS 'FOR' 'WHILE' 'THEN''IF' 'DO' := 'BEGIN'( WHICH ARE NOT MATCHED; 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' P( ST, A ); 'STRING' ST, A; ; P( <;'COMMENT'> )VALID:( <;> ); 'COMMENT' COULD FAIL TOO FEW PARAMETERS; 'END' //RUN //ALGOL 'BEGIN' 'REAL' X )INVALID PARAMETER LIKE COMMENTS:(Y; X := Y := 0.0 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' Q( ST ) INVALID PARAMETER LIKE COMMENTS ( A ); 'STRING' ST; 'REAL' A; ; Q( ) ALSO IN THE CALL( 1.0 ) 'END' //RUN //ALGOL 'BEGIN' LABELSCANNOTPRECEEDCOMMENTS: 'COMMENT' SHOULD FAIL; 'GOTO' LABELSCANNOTPRECEEDCOMMENTS 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' Q( ST )INVALID PARAMETER 'COMMENT' :( A ); 'STRING' ST; 'REAL' A; ; Q( ) AZ09:( 1.0 ) 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' Q( ST1 )P:( ST2 ); 'COMMENT' ; 'STRING' ST1, ST2; ; Q( <;'COMMENT' ) AZ: (>;> )INVALID:( ) 'END' //RUN //ALGOL 'BEGIN' 'COMMENT' STRING TESTS; 'PROCEDURE' P(ST); 'STRING' ST; ; P( <*STRING 'STRING' >> 'BEGIN' 'END';> ); P( < , > ) 'END' //RUN //ALGOL 'BEGIN' 'REAL' REAL, INTEGER, BEGIN, END; REAL := 0.0 'END' //RUN //ALGOL 'BEGIN' 'REAL' A, AB, ABC, ABCD, ABCDE, ABCDEF, ABCDEFG, ABCDEFGH, ABCDEFGHI, ABCDEFGHIJ, ABCDEFGHIJK, ABCDEFGHIJKL, ABCDEFGHIJKLM, ABCDEFGHIJKLMN, ABCDEFGHIJKLNMO, ABCDEFGHIJKLNMOP, ABCDEFGHIJKLMNOPQ, ABCDEFGHIJKLNMOPQR, ABCDEFGHIJKLMNOPQRS, ABCDEFGHIJKLMNOPQRST, ABCDEFGHIJKLMNOPQRSTU, ABCDEFGHIJKLMNOPQRSTUV, ABCDEFGHIJKLMNOPQRSTUVW, ABCDEFGHIJKLMNOPQRSTUVWX, ABCDEFGHIJKLMNOPQRSTUVWXY, ABCDEGFHIJKLMNOPQRSTUVWXYZ, ABCDEFGHIJKLMNPOQRSTUVWXYZA, ABCDEFGHIJKLMNOPQRSTUVWXYZAB, ABCDEFGHIJKLMNOPQRSTUVWXYZABC, ABCDEFGHIJKLMNOPQRSTUVWXYZABCD, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDE, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEF, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFG, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGH, ABCDEFGHIJKLNMOPQRSTUVWXYZABCDEFGHI, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJ, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJK, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKL, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLM, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMN, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQ, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQR, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRS, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRST, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTU, ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV; 'INTEGER' AC, C A; AC := 1 2 3 4 5 6; A := 1 . 0 0 & 1 0 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A(/1 : 3/), B(/1 : 3, 1 : 3/); 'REAL' 'PROCEDURE' SUM(DIM, A); 'VALUE' DIM; 'INTEGER' DIM; 'ARRAY' A; SUM := 'IF' DIM = 1 'THEN' A(/1/)+ A(/2/)+ A(/3/) 'ELSE' SUM2(A); 'REAL' 'PROCEDURE' SUM2(A); 'ARRAY' A; SUM2 := A(/1, 1/)+ A(/1, 2/)+ A(/1, 3/)+ A(/2, 1/)+ A(/2, 2/)+ A(/2, 3/)+ A(/3, 1/)+ A(/3, 2/)+ A(/3, 3/); 'INTEGER' I, J; 'FOR' I := 1, 2, 3 'DO' 'BEGIN' A(/I/):= I * I; 'FOR' J := 1, 2, 3 'DO' B(/I, J/):= A(/I/)+ J 'END'; OUTREAL(99,SUM(2, A)); OUTREAL(99,SUM(1, B)) 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A(/1 : 3/), B(/1 : 3, 1 : 3/); 'REAL' 'PROCEDURE' SUM(DIM, A); 'VALUE' DIM; 'INTEGER' DIM; 'ARRAY' A; SUM := 'IF' DIM = 1 'THEN' A(/1/)+ A(/2/)+ A(/3/) 'ELSE' SUM2(A); 'REAL' 'PROCEDURE' SUM2(A); 'ARRAY' A; SUM2 := A(/1, 1/)+ A(/1, 2/)+ A(/1, 3/)+ A(/2, 1/)+ A(/2, 2/)+ A(/2, 3/)+ A(/3, 1/)+ A(/3, 2/)+ A(/3, 3/); 'INTEGER' I, J; 'FOR' I := 1, 2, 3 'DO' 'BEGIN' A(/I/):= I * I; 'FOR' J := 1, 2, 3 'DO' B(/I, J/):= A(/I/)+ J 'END'; OUTREAL(99,SUM(1, A)); OUTREAL(99,SUM(2, B)) 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A(/1 : 3/), B(/1 : 3, 1 : 3/); 'REAL' 'PROCEDURE' SUM(DIM, A); 'VALUE' DIM; 'INTEGER' DIM; 'ARRAY' A; SUM := 'IF' DIM = 1 'THEN' (A(/1/)+ A(/2/)+ A(/3/)) 'ELSE' (A(/1, 1/)+ A(/1, 2/)+ A(/1, 3/)+ A(/2, 1/)+ A(/2, 2/) + A(/2, 3/)+ A(/3, 1/)+ A(/3, 2/)+ A(/3, 3/)); 'INTEGER' I, J; 'FOR' I := 1, 2, 3 'DO' 'BEGIN' A(/I/):= I * I; 'FOR' J := 1, 2, 3 'DO' B(/I, J/):= A(/I/)+ J 'END'; OUTREAL(99,SUM(1, A)); OUTREAL(99,SUM(2, B)); 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' RECURSIVE(LEVEL, L); 'VALUE' LEVEL; 'INTEGER' LEVEL; 'LABEL' L; 'BEGIN' 'IF' LEVEL # 0 'THEN' RECURSIVE(LEVEL - 1, EXIT) 'ELSE' 'GOTO' L; EXIT :; OUTREAL(99,LEVEL) 'END'; RECURSIVE(10, EXIT); EXIT :; 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I; 'BOOLEAN' B; 'PROCEDURE' LABELBYVALUE(L); 'VALUE' L; 'LABEL' L; ; 'PROCEDURE' LABELBYNAME(L); 'LABEL' L; 'BEGIN' I := 1; 'IF' B 'THEN' 'GOTO' L 'END'; 'SWITCH' S := L1, L2; 'INTEGER' 'PROCEDURE' NOTTOUSE; NOTTOUSE := SQRT( - 1); 'INTEGER' 'PROCEDURE' ONE; ONE := 1; B := 'FALSE'; LABELBYNAME(S(/NOTTOUSE/)); B := 'TRUE'; I := 2; LABELBYNAME(S(/I/)); L1 :; OUTREAL(99,1); L2 :; OUTREAL(99,2); LABELBYVALUE(S(/ONE/)); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' 'ARRAY' A(/1 : 9/); 'INTEGER' I, S; 'PROCEDURE' DUMMY(A); 'VALUE' A; 'ARRAY' A; SUM(A); 'PROCEDURE' SUM(A); 'ARRAY' A; 'FOR' I := 1 'STEP' 1 'UNTIL' 9 'DO' 'BEGIN' S := S + A(/I/); A(/I/):= 0 'END'; S := 0; 'FOR' I := 1 'STEP' 1 'UNTIL' 9 'DO' A(/I/):= I; DUMMY(A); OUTREAL(99,S); 'FOR' I := 1 'STEP' 1 'UNTIL' 9 'DO' 'IF' A(/I/)# I 'THEN' OUTREAL(99,I) 'END' //RUN //ALGOL 'BEGIN' 'REAL' X, Y; 'INTEGER' I; 'FOR' X := &6, &+6, &-6, .6, 6, 6.6, .6&6, .6&+6, .6&-6, 6&6, 6&+6, 6&-6, 6.6&6, 6.6&+6, 6.6&-6 'DO' OUTREAL(99, X); OUTREAL(99, .0000000000000000123456789123456789); OUTREAL(99, 3.1415926535897932384626433832795028841972); X := Y := .0000001; 'FOR' I := 1 'STEP' 1 'UNTIL' 13 'DO' 'BEGIN' OUTREAL(99, X); OUTREAL(99, Y); X := 10.0 * X; Y := 110 * X / 10.0 'END' 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' P(L); 'INTEGER' L; L : 'BEGIN' 'REAL' A; 'GOTO' L; L :; 'GOTO' LL 'END'; P(1); LL :; 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' S; 'PROCEDURE' P(F, G); 'PROCEDURE' F, G; 'BEGIN' 'INTEGER' X; 'PROCEDURE' R; 'BEGIN' OUTREAL(99, S); OUTREAL(99, X) 'END'; S := S + 1; X := S; 'IF' S = 1 'THEN' P(F, R) 'ELSE' F(G, R) 'END' P; 'PROCEDURE' Q(F, G); 'PROCEDURE' F, G; 'BEGIN' F; G 'END' Q; S := 0; P(Q, P); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' N1, N2; 'PROCEDURE' DUMMY; ; 'PROCEDURE' P(X, L); 'VALUE' X; 'INTEGER' X; 'PROCEDURE' L; 'BEGIN' 'PROCEDURE' GOTOL1; 'GOTO' L1; 'IF' X = N1 'THEN' P(X - 1, GOTOL1) 'ELSE' 'IF' X = N2 'THEN' L 'ELSE' P(X - 1, L); L1 :; OUTREAL(99, X) 'END' P; N1 := 4; N2 := 2; P(5, DUMMY); N2 := 0; P(7, DUMMY); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' S; 'PROCEDURE' P(F, G); 'PROCEDURE' F, G;'COMMENT'(X,Y):'PROCEDURE' X,Y; 'BEGIN' 'INTEGER' X; 'PROCEDURE' R(F, G); 'PROCEDURE' F, G;'COMMENT'(X,Y):'PROCEDURE' X,Y; 'BEGIN' OUTREAL(99, S); OUTREAL(99, X) 'END'; S := S + 1; X := S; 'IF' S = 1 'THEN' P(F, R) 'ELSE' F(G, R) 'END' P; 'PROCEDURE' Q(F, G); 'PROCEDURE' F, G;'COMMENT'(X,Y):'PROCEDURE' X,Y; 'BEGIN' F( Q, Q ); G( Q, Q) 'END' Q; S := 0; P(Q, P); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' N1, N2; 'PROCEDURE' P(X, L); 'VALUE' X; 'INTEGER' X; 'LABEL' L; 'BEGIN' 'IF' X = N1 'THEN' P(X - 1, L1) 'ELSE' 'IF' X = N2 'THEN' 'GOTO' L 'ELSE' P(X - 1, L); L1 :; OUTREAL(99, X) 'END' P; N1 := 4; N2 := 2; P(5, L2); N2 := 0; P(7, L2); L2:; 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, J; I := J := 0; I := 'IF' I = 0 'THEN' 'IF' J = 0 'THEN' 1 'ELSE' 2 'ELSE' 3; 'IF' I = 1 'THEN' 'IF' J = 0 'THEN' J := 2 'ELSE' J := 3 'ELSE' J := 4; OUTREAL(99, I); OUTREAL(99, J) 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I; 'REAL' X; 'PROCEDURE' ASS(X, I); 'REAL' X; 'INTEGER' I; 'IF' I < 0 'THEN' X := I + 3 'ELSE' I := 2.0 * X; ASS(X, - 1); I := 2; ASS(X, I); ASS(I, I); ASS(I, X); OUTREAL(99, I); OUTREAL(99, X) 'END' //RUN //ALGOL 'BEGIN' 'PROCEDURE' A0; 'BEGIN' 'PROCEDURE' A1; 'BEGIN' 'PROCEDURE' A2; 'BEGIN' 'PROCEDURE' A3; 'BEGIN' 'PROCEDURE' A4; 'BEGIN' 'PROCEDURE' A5; 'BEGIN' 'END'; ; 'END'; ;'END'; ;'END'; ;'END'; ;'END'; ;'END' //RUN //ALGOL 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'BEGIN' 'REAL' A; 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' //RUN //ALGOL 'BEGIN' 'REAL' A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59, A60, A61, A62, A63, A64, A65, A66, A67, A68, A69, A70, A71, A72, A73, A74, A75, A76, A77, A78, A79, A80, A81, A82, A83, A84, A85, A86, A87, A88, A89, A90, A91, A92, A93, A94, A95, A96, A97, A98, A99, A100, A101, A102, A103, A104, A105, A106, A107, A108, A109, A110, A111, A112, A113, A114, A115, A116, A117, A118, A119, A120, A121, A122, A123, A124, A125, A126, A127, A128, A129, A130, A131, A132, A133, A134, A135, A136, A137, A138, A139, A140, A141, A142, A143, A144, A145, A146, A147, A148, A149, A150, A151, A152, A153, A154, A155, A156, A157, A158, A159, A160, A161, A162, A163, A164, A165, A166, A167, A168, A169, A170, A171, A172, A173, A174, A175, A176, A177, A178, A179, A180, A181, A182, A183, A184, A185, A186, A187, A188, A189, A190, A191, A192, A193, A194, A195, A196, A197, A198, A199, A200, A201, A202, A203, A204, A205, A206, A207, A208, A209, A210, A211, A212, A213, A214, A215, A216, A217, A218, A219, A220, A221, A222, A223, A224, A225, A226, A227, A228, A229, A230, A231, A232, A233, A234, A235, A236, A237, A238, A239, A240, A241, A242, A243, A244, A245, A246, A247, A248, A249, A250, A251, A252, A253, A254, A255, A256, A257, A258, A259, A260, A261, A262, A263, A264, A265, A266, A267, A268, A269, A270, A271, A272, A273, A274, A275, A276, A277, A278, A279, A280, A281, A282, A283, A284, A285, A286, A287, A288, A289, A290, A291, A292, A293, A294, A295, A296, A297, A298, A299; A0 := 1.0; A1 := 1.0; A2 := 1.0; A3 := 1.0; A4 := 1.0; A5 := 1.0; A6 := 1.0; A7 := 1.0; A8 := 1.0; A9 := 1.0; A10 := 1.0; A11 := 1.0; A12 := 1.0; A13 := 1.0; A14 := 1.0; A15 := 1.0; A16 := 1.0; A17 := 1.0; A18 := 1.0; A19 := 1.0; A20 := 1.0; A21 := 1.0; A22 := 1.0; A23 := 1.0; A24 := 1.0; A25 := 1.0; A26 := 1.0; A27 := 1.0; A28 := 1.0; A29 := 1.0; A30 := 1.0; A31 := 1.0; A32 := 1.0; A33 := 1.0; A34 := 1.0; A35 := 1.0; A36 := 1.0; A37 := 1.0; A38 := 1.0; A39 := 1.0; A40 := 1.0; A41 := 1.0; A42 := 1.0; A43 := 1.0; A44 := 1.0; A45 := 1.0; A46 := 1.0; A47 := 1.0; A48 := 1.0; A49 := 1.0; A50 := 1.0; A51 := 1.0; A52 := 1.0; A53 := 1.0; A54 := 1.0; A55 := 1.0; A56 := 1.0; A57 := 1.0; A58 := 1.0; A59 := 1.0; A60 := 1.0; A61 := 1.0; A62 := 1.0; A63 := 1.0; A64 := 1.0; A65 := 1.0; A66 := 1.0; A67 := 1.0; A68 := 1.0; A69 := 1.0; A70 := 1.0; A71 := 1.0; A72 := 1.0; A73 := 1.0; A74 := 1.0; A75 := 1.0; A76 := 1.0; A77 := 1.0; A78 := 1.0; A79 := 1.0; A80 := 1.0; A81 := 1.0; A82 := 1.0; A83 := 1.0; A84 := 1.0; A85 := 1.0; A86 := 1.0; A87 := 1.0; A88 := 1.0; A89 := 1.0; A90 := 1.0; A91 := 1.0; A92 := 1.0; A93 := 1.0; A94 := 1.0; A95 := 1.0; A96 := 1.0; A97 := 1.0; A98 := 1.0; A99 := 1.0; A100 := 1.0; A101 := 1.0; A102 := 1.0; A103 := 1.0; A104 := 1.0; A105 := 1.0; A106 := 1.0; A107 := 1.0; A108 := 1.0; A109 := 1.0; A110 := 1.0; A111 := 1.0; A112 := 1.0; A113 := 1.0; A114 := 1.0; A115 := 1.0; A116 := 1.0; A117 := 1.0; A118 := 1.0; A119 := 1.0; A120 := 1.0; A121 := 1.0; A122 := 1.0; A123 := 1.0; A124 := 1.0; A125 := 1.0; A126 := 1.0; A127 := 1.0; A128 := 1.0; A129 := 1.0; A130 := 1.0; A131 := 1.0; A132 := 1.0; A133 := 1.0; A134 := 1.0; A135 := 1.0; A136 := 1.0; A137 := 1.0; A138 := 1.0; A139 := 1.0; A140 := 1.0; A141 := 1.0; A142 := 1.0; A143 := 1.0; A144 := 1.0; A145 := 1.0; A146 := 1.0; A147 := 1.0; A148 := 1.0; A149 := 1.0; A150 := 1.0; A151 := 1.0; A152 := 1.0; A153 := 1.0; A154 := 1.0; A155 := 1.0; A156 := 1.0; A157 := 1.0; A158 := 1.0; A159 := 1.0; A160 := 1.0; A161 := 1.0; A162 := 1.0; A163 := 1.0; A164 := 1.0; A165 := 1.0; A166 := 1.0; A167 := 1.0; A168 := 1.0; A169 := 1.0; A170 := 1.0; A171 := 1.0; A172 := 1.0; A173 := 1.0; A174 := 1.0; A175 := 1.0; A176 := 1.0; A177 := 1.0; A178 := 1.0; A179 := 1.0; A180 := 1.0; A181 := 1.0; A182 := 1.0; A183 := 1.0; A184 := 1.0; A185 := 1.0; A186 := 1.0; A187 := 1.0; A188 := 1.0; A189 := 1.0; A190 := 1.0; A191 := 1.0; A192 := 1.0; A193 := 1.0; A194 := 1.0; A195 := 1.0; A196 := 1.0; A197 := 1.0; A198 := 1.0; A199 := 1.0; A200 := 1.0; A201 := 1.0; A202 := 1.0; A203 := 1.0; A204 := 1.0; A205 := 1.0; A206 := 1.0; A207 := 1.0; A208 := 1.0; A209 := 1.0; A210 := 1.0; A211 := 1.0; A212 := 1.0; A213 := 1.0; A214 := 1.0; A215 := 1.0; A216 := 1.0; A217 := 1.0; A218 := 1.0; A219 := 1.0; A220 := 1.0; A221 := 1.0; A222 := 1.0; A223 := 1.0; A224 := 1.0; A225 := 1.0; A226 := 1.0; A227 := 1.0; A228 := 1.0; A229 := 1.0; A230 := 1.0; A231 := 1.0; A232 := 1.0; A233 := 1.0; A234 := 1.0; A235 := 1.0; A236 := 1.0; A237 := 1.0; A238 := 1.0; A239 := 1.0; A240 := 1.0; A241 := 1.0; A242 := 1.0; A243 := 1.0; A244 := 1.0; A245 := 1.0; A246 := 1.0; A247 := 1.0; A248 := 1.0; A249 := 1.0; A250 := 1.0; A251 := 1.0; A252 := 1.0; A253 := 1.0; A254 := 1.0; A255 := 1.0; A256 := 1.0; A257 := 1.0; A258 := 1.0; A259 := 1.0; A260 := 1.0; A261 := 1.0; A262 := 1.0; A263 := 1.0; A264 := 1.0; A265 := 1.0; A266 := 1.0; A267 := 1.0; A268 := 1.0; A269 := 1.0; A270 := 1.0; A271 := 1.0; A272 := 1.0; A273 := 1.0; A274 := 1.0; A275 := 1.0; A276 := 1.0; A277 := 1.0; A278 := 1.0; A279 := 1.0; A280 := 1.0; A281 := 1.0; A282 := 1.0; A283 := 1.0; A284 := 1.0; A285 := 1.0; A286 := 1.0; A287 := 1.0; A288 := 1.0; A289 := 1.0; A290 := 1.0; A291 := 1.0; A292 := 1.0; A293 := 1.0; A294 := 1.0; A295 := 1.0; A296 := 1.0; A297 := 1.0; A298 := 1.0; A299 := 1.0; OUTREAL(99, A0 + A1 + A2 + A3 + A4 + A5 + A6 + A7 + A8 + A9 + A10 + A11 + A12 + A13 + A14 + A15 + A16 + A17 + A18 + A19 + A20 + A21 + A22 + A23 + A24 + A25 + A26 + A27 + A28 + A29 + A30 + A31 + A32 + A33 + A34 + A35 + A36 + A37 + A38 + A39 + A40 + A41 + A42 + A43 + A44 + A45 + A46 + A47 + A48 + A49 + A50 + A51 + A52 + A53 + A54 + A55 + A56 + A57 + A58 + A59 + A60 + A61 + A62 + A63 + A64 + A65 + A66 + A67 + A68 + A69 + A70 + A71 + A72 + A73 + A74 + A75 + A76 + A77 + A78 + A79 + A80 + A81 + A82 + A83 + A84 + A85 + A86 + A87 + A88 + A89 + A90 + A91 + A92 + A93 + A94 + A95 + A96 + A97 + A98 + A99 + A100 + A101 + A102 + A103 + A104 + A105 + A106 + A107 + A108 + A109 + A110 + A111 + A112 + A113 + A114 + A115 + A116 + A117 + A118 + A119 + A120 + A121 + A122 + A123 + A124 + A125 + A126 + A127 + A128 + A129 + A130 + A131 + A132 + A133 + A134 + A135 + A136 + A137 + A138 + A139 + A140 + A141 + A142 + A143 + A144 + A145 + A146 + A147 + A148 + A149 + A150 + A151 + A152 + A153 + A154 + A155 + A156 + A157 + A158 + A159 + A160 + A161 + A162 + A163 + A164 + A165 + A166 + A167 + A168 + A169 + A170 + A171 + A172 + A173 + A174 + A175 + A176 + A177 + A178 + A179 + A180 + A181 + A182 + A183 + A184 + A185 + A186 + A187 + A188 + A189 + A190 + A191 + A192 + A193 + A194 + A195 + A196 + A197 + A198 + A199 + A200 + A201 + A202 + A203 + A204 + A205 + A206 + A207 + A208 + A209 + A210 + A211 + A212 + A213 + A214 + A215 + A216 + A217 + A218 + A219 + A220 + A221 + A222 + A223 + A224 + A225 + A226 + A227 + A228 + A229 + A230 + A231 + A232 + A233 + A234 + A235 + A236 + A237 + A238 + A239 + A240 + A241 + A242 + A243 + A244 + A245 + A246 + A247 + A248 + A249 + A250 + A251 + A252 + A253 + A254 + A255 + A256 + A257 + A258 + A259 + A260 + A261 + A262 + A263 + A264 + A265 + A266 + A267 + A268 + A269 + A270 + A271 + A272 + A273 + A274 + A275 + A276 + A277 + A278 + A279 + A280 + A281 + A282 + A283 + A284 + A285 + A286 + A287 + A288 + A289 + A290 + A291 + A292 + A293 + A294 + A295 + A296 + A297 + A298 + A299); 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59(/1 : 10/); A0(/1/):= 1.0; A1(/1/):= 1.0; A2(/1/):= 1.0; A3(/1/):= 1.0; A4(/1/):= 1.0; A5(/1/):= 1.0; A6(/1/):= 1.0; A7(/1/):= 1.0; A8(/1/):= 1.0; A9(/1/):= 1.0; A10(/1/):= 1.0; A11(/1/):= 1.0; A12(/1/):= 1.0; A13(/1/):= 1.0; A14(/1/):= 1.0; A15(/1/):= 1.0; A16(/1/):= 1.0; A17(/1/):= 1.0; A18(/1/):= 1.0; A19(/1/):= 1.0; A20(/1/):= 1.0; A21(/1/):= 1.0; A22(/1/):= 1.0; A23(/1/):= 1.0; A24(/1/):= 1.0; A25(/1/):= 1.0; A26(/1/):= 1.0; A27(/1/):= 1.0; A28(/1/):= 1.0; A29(/1/):= 1.0; A30(/1/):= 1.0; A31(/1/):= 1.0; A32(/1/):= 1.0; A33(/1/):= 1.0; A34(/1/):= 1.0; A35(/1/):= 1.0; A36(/1/):= 1.0; A37(/1/):= 1.0; A38(/1/):= 1.0; A39(/1/):= 1.0; A40(/1/):= 1.0; A41(/1/):= 1.0; A42(/1/):= 1.0; A43(/1/):= 1.0; A44(/1/):= 1.0; A45(/1/):= 1.0; A46(/1/):= 1.0; A47(/1/):= 1.0; A48(/1/):= 1.0; A49(/1/):= 1.0; A50(/1/):= 1.0; A51(/1/):= 1.0; A52(/1/):= 1.0; A53(/1/):= 1.0; A54(/1/):= 1.0; A55(/1/):= 1.0; A56(/1/):= 1.0; A57(/1/):= 1.0; A58(/1/):= 1.0; A59(/1/):= 1.0; OUTREAL(99, A0(/1/)+ A1(/1/)+ A2(/1/)+ A3(/1/)+ A4(/1/)+ A5(/1/)+ A6(/1/) + A7(/1/)+ A8(/1/)+ A9(/1/)+ A10(/1/)+ A11(/1/)+ A12(/1/)+ A13(/1/)+ A14(/1/)+ A15(/1/)+ A16(/1/)+ A17(/1/)+ A18(/1/)+ A19(/1/)+ A20(/1/)+ A21(/1/)+ A22(/1/)+ A23(/1/)+ A24(/1/)+ A25(/1/)+ A26(/1/)+ A27(/1/)+ A28(/1/)+ A29(/1/)+ A30(/1/)+ A31(/1/)+ A32(/1/)+ A33(/1/)+ A34(/1/)+ A35(/1/)+ A36(/1/)+ A37(/1/)+ A38(/1/)+ A39(/1/)+ A40(/1/)+ A41(/1/)+ A42(/1/)+ A43(/1/)+ A44(/1/)+ A45(/1/)+ A46(/1/)+ A47(/1/)+ A48(/1/)+ A49(/1/)+ A50(/1/)+ A51(/1/)+ A52(/1/)+ A53(/1/)+ A54(/1/)+ A55(/1/)+ A56(/1/)+ A57(/1/)+ A58(/1/)+ A59(/1/)); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11; 'INTEGER' SUM; SUM := 0; 'FOR' A0 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A1 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A2 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A3 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A4 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A5 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A6 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A7 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A8 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A9 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A10 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'FOR' A11 := 1,2 'DO' 'BEGIN' SUM := SUM + 1; 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END'; OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, J, SUM; I := 1; J := 2; SUM := 0; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'IF' I > J 'THEN''BEGIN' 'END' 'ELSE' 'BEGIN' SUM := SUM + 1; 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END'; OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, J, SUM; I := 1; J := 2; SUM := 1 + ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN'0 'ELSE' ('IF' I > J 'THEN' 0 'ELSE' 1))))))))); OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'SWITCH' SS := A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59, A60, A61, A62, A63, A64, A65, A66, A67, A68, A69, A70, A71, A72, A73, A74, A75, A76, A77, A78, A79, A80, A81, A82, A83, A84, A85, A86, A87, A88, A89, A90, A91, A92, A93, A94, A95, A96, A97, A98, A99, A100, A101, A102, A103, A104, A105, A106, A107, A108, A109, A110, A111, A112, A113, A114, A115, A116, A117, A118, A119, A120, A121, A122, A123, A124, A125, A126, A127, A128, A129, A130, A131, A132, A133, A134, A135, A136, A137, A138, A139, A140, A141, A142, A143, A144, A145, A146, A147, A148, A149, A150, A151, A152, A153, A154, A155, A156, A157, A158, A159, A160, A161, A162, A163, A164, A165, A166, A167, A168, A169, A170, A171, A172, A173, A174, A175, A176, A177, A178, A179, A180, A181, A182, A183, A184, A185, A186, A187, A188, A189, A190, A191, A192, A193, A194, A195, A196, A197, A198, A199, A200, A201, A202, A203, A204, A205, A206, A207, A208, A209, A210, A211, A212, A213, A214, A215, A216, A217, A218, A219, A220, A221, A222, A223, A224, A225, A226, A227, A228, A229, A230, A231, A232, A233, A234, A235, A236, A237, A238, A239, A240, A241, A242, A243, A244, A245, A246, A247, A248, A249, A250, A251, A252, A253, A254, A255, A256, A257, A258, A259, A260, A261, A262, A263, A264, A265, A266, A267, A268, A269, A270, A271, A272, A273, A274, A275, A276, A277, A278, A279, A280, A281, A282, A283, A284, A285, A286, A287, A288, A289, A290, A291, A292, A293, A294, A295, A296, A297, A298, A299; 'INTEGER' SUM; SUM := 1; A0:;SUM:=SUM+1;'GOTO' SS(/SUM/);A1:;SUM:=SUM+1;'GOTO' SS(/SUM/); A2:;SUM:=SUM+1;'GOTO' SS(/SUM/);A3:;SUM:=SUM+1;'GOTO' SS(/SUM/); A4:;SUM:=SUM+1;'GOTO' SS(/SUM/);A5:;SUM:=SUM+1;'GOTO' SS(/SUM/); A6:;SUM:=SUM+1;'GOTO' SS(/SUM/);A7:;SUM:=SUM+1;'GOTO' SS(/SUM/); A8:;SUM:=SUM+1;'GOTO' SS(/SUM/);A9:;SUM:=SUM+1;'GOTO' SS(/SUM/); A10:;SUM:=SUM+1;'GOTO' SS(/SUM/);A11:;SUM:=SUM+1;'GOTO' SS(/SUM/); A12:;SUM:=SUM+1;'GOTO' SS(/SUM/);A13:;SUM:=SUM+1;'GOTO' SS(/SUM/); A14:;SUM:=SUM+1;'GOTO' SS(/SUM/);A15:;SUM:=SUM+1;'GOTO' SS(/SUM/); A16:;SUM:=SUM+1;'GOTO' SS(/SUM/);A17:;SUM:=SUM+1;'GOTO' SS(/SUM/); A18:;SUM:=SUM+1;'GOTO' SS(/SUM/);A19:;SUM:=SUM+1;'GOTO' SS(/SUM/); A20:;SUM:=SUM+1;'GOTO' SS(/SUM/);A21:;SUM:=SUM+1;'GOTO' SS(/SUM/); A22:;SUM:=SUM+1;'GOTO' SS(/SUM/);A23:;SUM:=SUM+1;'GOTO' SS(/SUM/); A24:;SUM:=SUM+1;'GOTO' SS(/SUM/);A25:;SUM:=SUM+1;'GOTO' SS(/SUM/); A26:;SUM:=SUM+1;'GOTO' SS(/SUM/);A27:;SUM:=SUM+1;'GOTO' SS(/SUM/); A28:;SUM:=SUM+1;'GOTO' SS(/SUM/);A29:;SUM:=SUM+1;'GOTO' SS(/SUM/); A30:;SUM:=SUM+1;'GOTO' SS(/SUM/);A31:;SUM:=SUM+1;'GOTO' SS(/SUM/); A32:;SUM:=SUM+1;'GOTO' SS(/SUM/);A33:;SUM:=SUM+1;'GOTO' SS(/SUM/); A34:;SUM:=SUM+1;'GOTO' SS(/SUM/);A35:;SUM:=SUM+1;'GOTO' SS(/SUM/); A36:;SUM:=SUM+1;'GOTO' SS(/SUM/);A37:;SUM:=SUM+1;'GOTO' SS(/SUM/); A38:;SUM:=SUM+1;'GOTO' SS(/SUM/);A39:;SUM:=SUM+1;'GOTO' SS(/SUM/); A40:;SUM:=SUM+1;'GOTO' SS(/SUM/);A41:;SUM:=SUM+1;'GOTO' SS(/SUM/); A42:;SUM:=SUM+1;'GOTO' SS(/SUM/);A43:;SUM:=SUM+1;'GOTO' SS(/SUM/); A44:;SUM:=SUM+1;'GOTO' SS(/SUM/);A45:;SUM:=SUM+1;'GOTO' SS(/SUM/); A46:;SUM:=SUM+1;'GOTO' SS(/SUM/);A47:;SUM:=SUM+1;'GOTO' SS(/SUM/); A48:;SUM:=SUM+1;'GOTO' SS(/SUM/);A49:;SUM:=SUM+1;'GOTO' SS(/SUM/); A50:;SUM:=SUM+1;'GOTO' SS(/SUM/);A51:;SUM:=SUM+1;'GOTO' SS(/SUM/); A52:;SUM:=SUM+1;'GOTO' SS(/SUM/);A53:;SUM:=SUM+1;'GOTO' SS(/SUM/); A54:;SUM:=SUM+1;'GOTO' SS(/SUM/);A55:;SUM:=SUM+1;'GOTO' SS(/SUM/); A56:;SUM:=SUM+1;'GOTO' SS(/SUM/);A57:;SUM:=SUM+1;'GOTO' SS(/SUM/); A58:;SUM:=SUM+1;'GOTO' SS(/SUM/);A59:;SUM:=SUM+1;'GOTO' SS(/SUM/); A60:;SUM:=SUM+1;'GOTO' SS(/SUM/);A61:;SUM:=SUM+1;'GOTO' SS(/SUM/); A62:;SUM:=SUM+1;'GOTO' SS(/SUM/);A63:;SUM:=SUM+1;'GOTO' SS(/SUM/); A64:;SUM:=SUM+1;'GOTO' SS(/SUM/);A65:;SUM:=SUM+1;'GOTO' SS(/SUM/); A66:;SUM:=SUM+1;'GOTO' SS(/SUM/);A67:;SUM:=SUM+1;'GOTO' SS(/SUM/); A68:;SUM:=SUM+1;'GOTO' SS(/SUM/);A69:;SUM:=SUM+1;'GOTO' SS(/SUM/); A70:;SUM:=SUM+1;'GOTO' SS(/SUM/);A71:;SUM:=SUM+1;'GOTO' SS(/SUM/); A72:;SUM:=SUM+1;'GOTO' SS(/SUM/);A73:;SUM:=SUM+1;'GOTO' SS(/SUM/); A74:;SUM:=SUM+1;'GOTO' SS(/SUM/);A75:;SUM:=SUM+1;'GOTO' SS(/SUM/); A76:;SUM:=SUM+1;'GOTO' SS(/SUM/);A77:;SUM:=SUM+1;'GOTO' SS(/SUM/); A78:;SUM:=SUM+1;'GOTO' SS(/SUM/);A79:;SUM:=SUM+1;'GOTO' SS(/SUM/); A80:;SUM:=SUM+1;'GOTO' SS(/SUM/);A81:;SUM:=SUM+1;'GOTO' SS(/SUM/); A82:;SUM:=SUM+1;'GOTO' SS(/SUM/);A83:;SUM:=SUM+1;'GOTO' SS(/SUM/); A84:;SUM:=SUM+1;'GOTO' SS(/SUM/);A85:;SUM:=SUM+1;'GOTO' SS(/SUM/); A86:;SUM:=SUM+1;'GOTO' SS(/SUM/);A87:;SUM:=SUM+1;'GOTO' SS(/SUM/); A88:;SUM:=SUM+1;'GOTO' SS(/SUM/);A89:;SUM:=SUM+1;'GOTO' SS(/SUM/); A90:;SUM:=SUM+1;'GOTO' SS(/SUM/);A91:;SUM:=SUM+1;'GOTO' SS(/SUM/); A92:;SUM:=SUM+1;'GOTO' SS(/SUM/);A93:;SUM:=SUM+1;'GOTO' SS(/SUM/); A94:;SUM:=SUM+1;'GOTO' SS(/SUM/);A95:;SUM:=SUM+1;'GOTO' SS(/SUM/); A96:;SUM:=SUM+1;'GOTO' SS(/SUM/);A97:;SUM:=SUM+1;'GOTO' SS(/SUM/); A98:;SUM:=SUM+1;'GOTO' SS(/SUM/);A99:;SUM:=SUM+1;'GOTO' SS(/SUM/); A100:;SUM:=SUM+1;'GOTO' SS(/SUM/);A101:;SUM:=SUM+1;'GOTO' SS(/SUM/); A102:;SUM:=SUM+1;'GOTO' SS(/SUM/);A103:;SUM:=SUM+1;'GOTO' SS(/SUM/); A104:;SUM:=SUM+1;'GOTO' SS(/SUM/);A105:;SUM:=SUM+1;'GOTO' SS(/SUM/); A106:;SUM:=SUM+1;'GOTO' SS(/SUM/);A107:;SUM:=SUM+1;'GOTO' SS(/SUM/); A108:;SUM:=SUM+1;'GOTO' SS(/SUM/);A109:;SUM:=SUM+1;'GOTO' SS(/SUM/); A110:;SUM:=SUM+1;'GOTO' SS(/SUM/);A111:;SUM:=SUM+1;'GOTO' SS(/SUM/); A112:;SUM:=SUM+1;'GOTO' SS(/SUM/);A113:;SUM:=SUM+1;'GOTO' SS(/SUM/); A114:;SUM:=SUM+1;'GOTO' SS(/SUM/);A115:;SUM:=SUM+1;'GOTO' SS(/SUM/); A116:;SUM:=SUM+1;'GOTO' SS(/SUM/);A117:;SUM:=SUM+1;'GOTO' SS(/SUM/); A118:;SUM:=SUM+1;'GOTO' SS(/SUM/);A119:;SUM:=SUM+1;'GOTO' SS(/SUM/); A120:;SUM:=SUM+1;'GOTO' SS(/SUM/);A121:;SUM:=SUM+1;'GOTO' SS(/SUM/); A122:;SUM:=SUM+1;'GOTO' SS(/SUM/);A123:;SUM:=SUM+1;'GOTO' SS(/SUM/); A124:;SUM:=SUM+1;'GOTO' SS(/SUM/);A125:;SUM:=SUM+1;'GOTO' SS(/SUM/); A126:;SUM:=SUM+1;'GOTO' SS(/SUM/);A127:;SUM:=SUM+1;'GOTO' SS(/SUM/); A128:;SUM:=SUM+1;'GOTO' SS(/SUM/);A129:;SUM:=SUM+1;'GOTO' SS(/SUM/); A130:;SUM:=SUM+1;'GOTO' SS(/SUM/);A131:;SUM:=SUM+1;'GOTO' SS(/SUM/); A132:;SUM:=SUM+1;'GOTO' SS(/SUM/);A133:;SUM:=SUM+1;'GOTO' SS(/SUM/); A134:;SUM:=SUM+1;'GOTO' SS(/SUM/);A135:;SUM:=SUM+1;'GOTO' SS(/SUM/); A136:;SUM:=SUM+1;'GOTO' SS(/SUM/);A137:;SUM:=SUM+1;'GOTO' SS(/SUM/); A138:;SUM:=SUM+1;'GOTO' SS(/SUM/);A139:;SUM:=SUM+1;'GOTO' SS(/SUM/); A140:;SUM:=SUM+1;'GOTO' SS(/SUM/);A141:;SUM:=SUM+1;'GOTO' SS(/SUM/); A142:;SUM:=SUM+1;'GOTO' SS(/SUM/);A143:;SUM:=SUM+1;'GOTO' SS(/SUM/); A144:;SUM:=SUM+1;'GOTO' SS(/SUM/);A145:;SUM:=SUM+1;'GOTO' SS(/SUM/); A146:;SUM:=SUM+1;'GOTO' SS(/SUM/);A147:;SUM:=SUM+1;'GOTO' SS(/SUM/); A148:;SUM:=SUM+1;'GOTO' SS(/SUM/);A149:;SUM:=SUM+1;'GOTO' SS(/SUM/); A150:;SUM:=SUM+1;'GOTO' SS(/SUM/);A151:;SUM:=SUM+1;'GOTO' SS(/SUM/); A152:;SUM:=SUM+1;'GOTO' SS(/SUM/);A153:;SUM:=SUM+1;'GOTO' SS(/SUM/); A154:;SUM:=SUM+1;'GOTO' SS(/SUM/);A155:;SUM:=SUM+1;'GOTO' SS(/SUM/); A156:;SUM:=SUM+1;'GOTO' SS(/SUM/);A157:;SUM:=SUM+1;'GOTO' SS(/SUM/); A158:;SUM:=SUM+1;'GOTO' SS(/SUM/);A159:;SUM:=SUM+1;'GOTO' SS(/SUM/); A160:;SUM:=SUM+1;'GOTO' SS(/SUM/);A161:;SUM:=SUM+1;'GOTO' SS(/SUM/); A162:;SUM:=SUM+1;'GOTO' SS(/SUM/);A163:;SUM:=SUM+1;'GOTO' SS(/SUM/); A164:;SUM:=SUM+1;'GOTO' SS(/SUM/);A165:;SUM:=SUM+1;'GOTO' SS(/SUM/); A166:;SUM:=SUM+1;'GOTO' SS(/SUM/);A167:;SUM:=SUM+1;'GOTO' SS(/SUM/); A168:;SUM:=SUM+1;'GOTO' SS(/SUM/);A169:;SUM:=SUM+1;'GOTO' SS(/SUM/); A170:;SUM:=SUM+1;'GOTO' SS(/SUM/);A171:;SUM:=SUM+1;'GOTO' SS(/SUM/); A172:;SUM:=SUM+1;'GOTO' SS(/SUM/);A173:;SUM:=SUM+1;'GOTO' SS(/SUM/); A174:;SUM:=SUM+1;'GOTO' SS(/SUM/);A175:;SUM:=SUM+1;'GOTO' SS(/SUM/); A176:;SUM:=SUM+1;'GOTO' SS(/SUM/);A177:;SUM:=SUM+1;'GOTO' SS(/SUM/); A178:;SUM:=SUM+1;'GOTO' SS(/SUM/);A179:;SUM:=SUM+1;'GOTO' SS(/SUM/); A180:;SUM:=SUM+1;'GOTO' SS(/SUM/);A181:;SUM:=SUM+1;'GOTO' SS(/SUM/); A182:;SUM:=SUM+1;'GOTO' SS(/SUM/);A183:;SUM:=SUM+1;'GOTO' SS(/SUM/); A184:;SUM:=SUM+1;'GOTO' SS(/SUM/);A185:;SUM:=SUM+1;'GOTO' SS(/SUM/); A186:;SUM:=SUM+1;'GOTO' SS(/SUM/);A187:;SUM:=SUM+1;'GOTO' SS(/SUM/); A188:;SUM:=SUM+1;'GOTO' SS(/SUM/);A189:;SUM:=SUM+1;'GOTO' SS(/SUM/); A190:;SUM:=SUM+1;'GOTO' SS(/SUM/);A191:;SUM:=SUM+1;'GOTO' SS(/SUM/); A192:;SUM:=SUM+1;'GOTO' SS(/SUM/);A193:;SUM:=SUM+1;'GOTO' SS(/SUM/); A194:;SUM:=SUM+1;'GOTO' SS(/SUM/);A195:;SUM:=SUM+1;'GOTO' SS(/SUM/); A196:;SUM:=SUM+1;'GOTO' SS(/SUM/);A197:;SUM:=SUM+1;'GOTO' SS(/SUM/); A198:;SUM:=SUM+1;'GOTO' SS(/SUM/);A199:;SUM:=SUM+1;'GOTO' SS(/SUM/); A200:;SUM:=SUM+1;'GOTO' SS(/SUM/);A201:;SUM:=SUM+1;'GOTO' SS(/SUM/); A202:;SUM:=SUM+1;'GOTO' SS(/SUM/);A203:;SUM:=SUM+1;'GOTO' SS(/SUM/); A204:;SUM:=SUM+1;'GOTO' SS(/SUM/);A205:;SUM:=SUM+1;'GOTO' SS(/SUM/); A206:;SUM:=SUM+1;'GOTO' SS(/SUM/);A207:;SUM:=SUM+1;'GOTO' SS(/SUM/); A208:;SUM:=SUM+1;'GOTO' SS(/SUM/);A209:;SUM:=SUM+1;'GOTO' SS(/SUM/); A210:;SUM:=SUM+1;'GOTO' SS(/SUM/);A211:;SUM:=SUM+1;'GOTO' SS(/SUM/); A212:;SUM:=SUM+1;'GOTO' SS(/SUM/);A213:;SUM:=SUM+1;'GOTO' SS(/SUM/); A214:;SUM:=SUM+1;'GOTO' SS(/SUM/);A215:;SUM:=SUM+1;'GOTO' SS(/SUM/); A216:;SUM:=SUM+1;'GOTO' SS(/SUM/);A217:;SUM:=SUM+1;'GOTO' SS(/SUM/); A218:;SUM:=SUM+1;'GOTO' SS(/SUM/);A219:;SUM:=SUM+1;'GOTO' SS(/SUM/); A220:;SUM:=SUM+1;'GOTO' SS(/SUM/);A221:;SUM:=SUM+1;'GOTO' SS(/SUM/); A222:;SUM:=SUM+1;'GOTO' SS(/SUM/);A223:;SUM:=SUM+1;'GOTO' SS(/SUM/); A224:;SUM:=SUM+1;'GOTO' SS(/SUM/);A225:;SUM:=SUM+1;'GOTO' SS(/SUM/); A226:;SUM:=SUM+1;'GOTO' SS(/SUM/);A227:;SUM:=SUM+1;'GOTO' SS(/SUM/); A228:;SUM:=SUM+1;'GOTO' SS(/SUM/);A229:;SUM:=SUM+1;'GOTO' SS(/SUM/); A230:;SUM:=SUM+1;'GOTO' SS(/SUM/);A231:;SUM:=SUM+1;'GOTO' SS(/SUM/); A232:;SUM:=SUM+1;'GOTO' SS(/SUM/);A233:;SUM:=SUM+1;'GOTO' SS(/SUM/); A234:;SUM:=SUM+1;'GOTO' SS(/SUM/);A235:;SUM:=SUM+1;'GOTO' SS(/SUM/); A236:;SUM:=SUM+1;'GOTO' SS(/SUM/);A237:;SUM:=SUM+1;'GOTO' SS(/SUM/); A238:;SUM:=SUM+1;'GOTO' SS(/SUM/);A239:;SUM:=SUM+1;'GOTO' SS(/SUM/); A240:;SUM:=SUM+1;'GOTO' SS(/SUM/);A241:;SUM:=SUM+1;'GOTO' SS(/SUM/); A242:;SUM:=SUM+1;'GOTO' SS(/SUM/);A243:;SUM:=SUM+1;'GOTO' SS(/SUM/); A244:;SUM:=SUM+1;'GOTO' SS(/SUM/);A245:;SUM:=SUM+1;'GOTO' SS(/SUM/); A246:;SUM:=SUM+1;'GOTO' SS(/SUM/);A247:;SUM:=SUM+1;'GOTO' SS(/SUM/); A248:;SUM:=SUM+1;'GOTO' SS(/SUM/);A249:;SUM:=SUM+1;'GOTO' SS(/SUM/); A250:;SUM:=SUM+1;'GOTO' SS(/SUM/);A251:;SUM:=SUM+1;'GOTO' SS(/SUM/); A252:;SUM:=SUM+1;'GOTO' SS(/SUM/);A253:;SUM:=SUM+1;'GOTO' SS(/SUM/); A254:;SUM:=SUM+1;'GOTO' SS(/SUM/);A255:;SUM:=SUM+1;'GOTO' SS(/SUM/); A256:;SUM:=SUM+1;'GOTO' SS(/SUM/);A257:;SUM:=SUM+1;'GOTO' SS(/SUM/); A258:;SUM:=SUM+1;'GOTO' SS(/SUM/);A259:;SUM:=SUM+1;'GOTO' SS(/SUM/); A260:;SUM:=SUM+1;'GOTO' SS(/SUM/);A261:;SUM:=SUM+1;'GOTO' SS(/SUM/); A262:;SUM:=SUM+1;'GOTO' SS(/SUM/);A263:;SUM:=SUM+1;'GOTO' SS(/SUM/); A264:;SUM:=SUM+1;'GOTO' SS(/SUM/);A265:;SUM:=SUM+1;'GOTO' SS(/SUM/); A266:;SUM:=SUM+1;'GOTO' SS(/SUM/);A267:;SUM:=SUM+1;'GOTO' SS(/SUM/); A268:;SUM:=SUM+1;'GOTO' SS(/SUM/);A269:;SUM:=SUM+1;'GOTO' SS(/SUM/); A270:;SUM:=SUM+1;'GOTO' SS(/SUM/);A271:;SUM:=SUM+1;'GOTO' SS(/SUM/); A272:;SUM:=SUM+1;'GOTO' SS(/SUM/);A273:;SUM:=SUM+1;'GOTO' SS(/SUM/); A274:;SUM:=SUM+1;'GOTO' SS(/SUM/);A275:;SUM:=SUM+1;'GOTO' SS(/SUM/); A276:;SUM:=SUM+1;'GOTO' SS(/SUM/);A277:;SUM:=SUM+1;'GOTO' SS(/SUM/); A278:;SUM:=SUM+1;'GOTO' SS(/SUM/);A279:;SUM:=SUM+1;'GOTO' SS(/SUM/); A280:;SUM:=SUM+1;'GOTO' SS(/SUM/);A281:;SUM:=SUM+1;'GOTO' SS(/SUM/); A282:;SUM:=SUM+1;'GOTO' SS(/SUM/);A283:;SUM:=SUM+1;'GOTO' SS(/SUM/); A284:;SUM:=SUM+1;'GOTO' SS(/SUM/);A285:;SUM:=SUM+1;'GOTO' SS(/SUM/); A286:;SUM:=SUM+1;'GOTO' SS(/SUM/);A287:;SUM:=SUM+1;'GOTO' SS(/SUM/); A288:;SUM:=SUM+1;'GOTO' SS(/SUM/);A289:;SUM:=SUM+1;'GOTO' SS(/SUM/); A290:;SUM:=SUM+1;'GOTO' SS(/SUM/);A291:;SUM:=SUM+1;'GOTO' SS(/SUM/); A292:;SUM:=SUM+1;'GOTO' SS(/SUM/);A293:;SUM:=SUM+1;'GOTO' SS(/SUM/); A294:;SUM:=SUM+1;'GOTO' SS(/SUM/);A295:;SUM:=SUM+1;'GOTO' SS(/SUM/); A296:;SUM:=SUM+1;'GOTO' SS(/SUM/);A297:;SUM:=SUM+1;'GOTO' SS(/SUM/); A298:;SUM:=SUM+1;'GOTO' SS(/SUM/);A299:;SUM:=SUM+1;OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' 'PROCEDURE' P(A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59); 'VALUE' A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59; 'INTEGER' A0, A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12, A13, A14, A15, A16, A17, A18, A19, A20, A21, A22, A23, A24, A25, A26, A27, A28, A29, A30, A31, A32, A33, A34, A35, A36, A37, A38, A39, A40, A41, A42, A43, A44, A45, A46, A47, A48, A49, A50, A51, A52, A53, A54, A55, A56, A57, A58, A59; P := A0 + A1 + A2 + A3 + A4 + A5 + A6 + A7 + A8 + A9 + A10 + A11 + A12 + A13 + A14 + A15 + A16 + A17 + A18 + A19 + A20 + A21 + A22 + A23 + A24 + A25 + A26 + A27 + A28 + A29 + A30 + A31 + A32 + A33 + A34 + A35 + A36 + A37 + A38 + A39 + A40 + A41 + A42 + A43 + A44 + A45 + A46 + A47 + A48 + A49 + A50 + A51 + A52 + A53 + A54 + A55 + A56 + A57 + A58 + A59; OUTREAL(99, P(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)); 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A(/1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2, 1 : 2/); A(/1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1/):= 1.0; OUTREAL(99, A(/1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1/)); 'END' //RUN //ALGOL 'BEGIN' 'REAL' A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14; 'REAL' SUM; A0 := 1.0; A1 := 1.0; A2 := 1.0; A3 := 1.0; A4 := 1.0; A5 := 1.0; A6 := 1.0; A7 := 1.0; A8 := 1.0; A9 := 1.0; A10 := 1.0; A11 := 1.0; A12 := 1.0; A13 := 1.0; A14 := 1.0; SUM := A0 + (A1 + (A2 + (A3 + (A4 + (A5 + (A6 + (A7 + (A8 + (A9 + (A10 + (A11 + (A12 + (A13 + (A14)))))))))))))); OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'REAL' A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14; 'REAL' SUM; A0 := 1.0; A1 := 1.0; A2 := 1.0; A3 := 1.0; A4 := 1.0; A5 := 1.0; A6 := 1.0; A7 := 1.0; A8 := 1.0; A9 := 1.0; A10 := 1.0; A11 := 1.0; A12 := 1.0; A13 := 1.0; A14 := 1.0; SUM := 2.0 * A0 + .5 * (2.0 * A1 + .5 * (2.0 * A2 + .5 * (2.0 * A3 + .5 * (2.0 * A4 + .5 * (2.0 * A5 + .5 * (2.0 * A6 + .5 * (2.0 * A7 + .5 * (2.0 * A8 + .5 * (2.0 * A9 + .5 * (2.0 * A10 + .5 * (2.0 * A11 + .5 * (2.0 * A12 + .5 * (2.0 * A13 + .5 * (A14)))))))))))))); OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'REAL' X; X := 8.4; OUTREAL(99, SQRT(SQRT(SQRT(SQRT(SQRT(SQRT(SQRT(SQRT(SQRT(X^9))))))))) ); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, J; I := 1; J := 2; L1 :; 'GOTO' 'IF' I > J 'THEN'L1 'ELSE' 'IF' I > J 'THEN'L1 'ELSE' 'IF' I > J 'THEN'L1 'ELSE' 'IF' I > J 'THEN'L1 'ELSE' 'IF' I > J 'THEN'L1 'ELSE' 'IF' I > J 'THEN' L1 'ELSE' L2; L2 :; 'END' //RUN //ALGOL 'BEGIN' A0 :; A1 :; A2 :; A3 :; A4 :; A5 :; 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' SUM; SUM := 0; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'BEGIN' SUM := SUM + 1; 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END' 'END'; OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'REAL' A0,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14; A0 := A1 := A2 := A3 := A4 := A5 := A6 := A7 := A8 := A9 := A10 := A11 := A12 := A13 := A14 := 1.0; OUTREAL(99, A0 + A1 + A2 + A3 + A4 + A5 + A6 + A7 + A8 + A9 + A10 + A11 + A12 + A13 + A14); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, SUM; SUM := 0; 'FOR' I := 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1, I + 1 'DO' SUM := SUM + I; OUTREAL(99, SUM); 'END' //RUN //ALGOL 'BEGIN' 'ARRAY' A0(/1 : 10/), A1(/1 : 10/), A2(/1 : 10/), A3(/1 : 10/), A4(/1 : 10/), A5(/1 : 10/), A6(/1 : 10/), A7(/1 : 10/), A8(/1 : 10/), A9(/1 : 10/), A10(/1 : 10/), A11(/1 : 10/), A12(/1 : 10/), A13(/1 : 10/), A14(/1 : 10/), A15(/1 : 10/), A16(/1 : 10/), A17(/1 : 10/), A18(/1 : 10/), A19(/1 : 10/), A20(/1 : 10/), A21(/1 : 10/), A22(/1 : 10/), A23(/1 : 10/), A24(/1 : 10/), A25(/1 : 10/), A26(/1 : 10/), A27(/1 : 10/), A28(/1 : 10/), A29(/1 : 10/), A30(/1 : 10/), A31(/1 : 10/), A32(/1 : 10/), A33(/1 : 10/), A34(/1 : 10/), A35(/1 : 10/), A36(/1 : 10/), A37(/1 : 10/), A38(/1 : 10/), A39(/1 : 10/), A40(/1 : 10/), A41(/1 : 10/), A42(/1 : 10/), A43(/1 : 10/), A44(/1 : 10/), A45(/1 : 10/), A46(/1 : 10/), A47(/1 : 10/), A48(/1 : 10/), A49(/1 : 10/), A50(/1 : 10/), A51(/1 : 10/), A52(/1 : 10/), A53(/1 : 10/), A54(/1 : 10/), A55(/1 : 10/), A56(/1 : 10/), A57(/1 : 10/), A58(/1 : 10/), A59(/1 : 10/); A0(/1/):= 1.0; A1(/1/):= 1.0; A2(/1/):= 1.0; A3(/1/):= 1.0; A4(/1/):= 1.0; A5(/1/):= 1.0; A6(/1/):= 1.0; A7(/1/):= 1.0; A8(/1/):= 1.0; A9(/1/):= 1.0; A10(/1/):= 1.0; A11(/1/):= 1.0; A12(/1/):= 1.0; A13(/1/):= 1.0; A14(/1/):= 1.0; A15(/1/):= 1.0; A16(/1/):= 1.0; A17(/1/):= 1.0; A18(/1/):= 1.0; A19(/1/):= 1.0; A20(/1/):= 1.0; A21(/1/):= 1.0; A22(/1/):= 1.0; A23(/1/):= 1.0; A24(/1/):= 1.0; A25(/1/):= 1.0; A26(/1/):= 1.0; A27(/1/):= 1.0; A28(/1/):= 1.0; A29(/1/):= 1.0; A30(/1/):= 1.0; A31(/1/):= 1.0; A32(/1/):= 1.0; A33(/1/):= 1.0; A34(/1/):= 1.0; A35(/1/):= 1.0; A36(/1/):= 1.0; A37(/1/):= 1.0; A38(/1/):= 1.0; A39(/1/):= 1.0; A40(/1/):= 1.0; A41(/1/):= 1.0; A42(/1/):= 1.0; A43(/1/):= 1.0; A44(/1/):= 1.0; A45(/1/):= 1.0; A46(/1/):= 1.0; A47(/1/):= 1.0; A48(/1/):= 1.0; A49(/1/):= 1.0; A50(/1/):= 1.0; A51(/1/):= 1.0; A52(/1/):= 1.0; A53(/1/):= 1.0; A54(/1/):= 1.0; A55(/1/):= 1.0; A56(/1/):= 1.0; A57(/1/):= 1.0; A58(/1/):= 1.0; A59(/1/):= 1.0; OUTREAL(99, A0(/1/)+ A1(/1/)+ A2(/1/)+ A3(/1/)+ A4(/1/)+ A5(/1/)+ A6(/1/) + A7(/1/)+ A8(/1/)+ A9(/1/)+ A10(/1/)+ A11(/1/)+ A12(/1/)+ A13(/1/)+ A14(/1/)+ A15(/1/)+ A16(/1/)+ A17(/1/)+ A18(/1/)+ A19(/1/)+ A20(/1/)+ A21(/1/)+ A22(/1/)+ A23(/1/)+ A24(/1/)+ A25(/1/)+ A26(/1/)+ A27(/1/)+ A28(/1/)+ A29(/1/)+ A30(/1/)+ A31(/1/)+ A32(/1/)+ A33(/1/)+ A34(/1/)+ A35(/1/)+ A36(/1/)+ A37(/1/)+ A38(/1/)+ A39(/1/)+ A40(/1/)+ A41(/1/)+ A42(/1/)+ A43(/1/)+ A44(/1/)+ A45(/1/)+ A46(/1/)+ A47(/1/)+ A48(/1/)+ A49(/1/)+ A50(/1/)+ A51(/1/)+ A52(/1/)+ A53(/1/)+ A54(/1/)+ A55(/1/)+ A56(/1/)+ A57(/1/)+ A58(/1/)+ A59(/1/)); 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' 'PROCEDURE' IABS(I); 'VALUE' I; 'INTEGER' I; IABS := 'IF' I < 0 'THEN' - I 'ELSE' I; 'INTEGER' I, J, K; I := J := K := 1; 'BEGIN' 'ARRAY' A(/('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) : ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6 + 10.2/), A2(/('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6 - 4 : ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1), ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6 - 4 : ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1)/); 'BOOLEAN' B; 'SWITCH' S := L1, 'IF' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) > 6 'THEN'L1 'ELSE' L2, L2; A(/('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1)/):= A2(/('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1), ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1)/) := ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6; B := ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) > 6; L1 :; 'GOTO' 'IF' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) > 6 'THEN' L1 'ELSE' L2; L2 :; 'FOR' I := 1 'STEP' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) 'UNTIL' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) 'DO' A(/I/):= ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6; 'FOR' I := ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1), ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) + 1, ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) + 10 'DO' A(/I/):= ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1); 'IF' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) > 6 'THEN' 'GOTO' S(/('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6/) 'ELSE' 'FOR' I := ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) 'STEP' 10 'UNTIL' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) - 1 'DO' 'FOR' J := ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) 'WHILE' ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) > 6 'DO' ; I := IABS(('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1)); J := IABS(('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6); OUTREAL(99, I + J + ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) * 3.0 - 1.6 + ('IF' IABS(J * K 'DIV' I) > 3 * I - K 'THEN'- 60 'ELSE' 1) + A(/1/)+ A2(/1, 1/)); 'END' 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I, J; 'FOR' I := - 2, - 1, 1, 2 'DO' 'FOR' J := - 2 'STEP' 1 'UNTIL' 2 'DO' 'IF' J 'DIV' I # SIGN(J / I) * ENTIER(ABS(J / I)) 'THEN' 'BEGIN' OUTREAL(99, J); OUTREAL(99, I); OUTREAL(99, J 'DIV' I) 'END'; 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' 'PROCEDURE' TSIGN(X); 'VALUE' X; 'REAL' X; TSIGN := 'IF' X > 0 'THEN' 1 'ELSE' 'IF' X < 0 'THEN' - 1 'ELSE' 0; 'INTEGER' 'PROCEDURE' TENTIER(X); 'VALUE' X; 'REAL' X; TENTIER := X - .5; 'REAL' 'PROCEDURE' TABS(X); 'VALUE' X; 'REAL' X; TABS := 'IF' X < 0 'THEN' - X 'ELSE' X; 'REAL' X; 'FOR' X := - 100, - 100.1, - 99.4, - .4, - .1, 0, .1, .4, .6, 300 'DO' 'IF' TSIGN(X) # SIGN(X) 'OR' TENTIER(X) # ENTIER(X) 'OR' TABS(X) # ABS(X) 'THEN' OUTREAL(99, X) 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' 'ARRAY' EQ(/1 : 9/); 'INTEGER' I; 'REAL' X, Y; 'PROCEDURE' PRINT EQ; 'FOR' I := 1 'STEP' 1 'UNTIL' 9 'DO' OUTREAL(99, EQ(/I/)); 'PROCEDURE' TEST(A, B, C); 'VALUE' A, B, C; 'REAL' A, B, C; 'BEGIN' 'PROCEDURE' INC(A, B, I); 'VALUE' A, B, I; 'REAL' A, B; 'INTEGER' I; 'IF' A < B 'THEN' EQ(/I/):= EQ(/I/)+ 1 'ELSE' 'IF' A = B 'THEN' EQ(/I + 1/):= EQ(/I + 1/)+ 1 'ELSE' EQ(/I + 2/):= EQ(/I + 2/)+ 1; INC(A, B, 1); INC(B, C, 4); INC(C, A, 7) 'END'; 'FOR' I := 1 'STEP' 1 'UNTIL' 9 'DO' EQ(/I/):= 0; I := 1; 'FOR' X := 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19, 0.20, 0.21, 0.22, 0.23, 0.24, 0.25, 0.26, 0.27, 0.28, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34, 0.35, 0.36, 0.37, 0.38, 0.39, 0.40, 0.41, 0.42, 0.43, 0.44, 0.45, 0.46, 0.47, 0.48, 0.49, 0.50, 0.51, 0.52, 0.53, 0.54, 0.55, 0.56, 0.57, 0.58, 0.59, 0.60, 0.61, 0.62, 0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.69, 0.70, 0.71, 0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, 0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, 1.00 'DO' 'BEGIN' INREAL(98, Y); TEST(X, Y, I / 100); I := I + 1 'END'; PRINTEQ; I := 1; 'FOR' X := 100.01, 100.02, 100.03, 100.04, 100.05, 100.06, 100.07, 100.08, 100.09, 100.10, 100.11, 100.12, 100.13, 100.14, 100.15, 100.16, 100.17, 100.18, 100.19, 100.20, 100.21, 100.22, 100.23, 100.24, 100.25, 100.26, 100.27, 100.28, 100.29, 100.30, 100.31, 100.32, 100.33, 100.34, 100.35, 100.36, 100.37, 100.38, 100.39, 100.40, 100.41, 100.42, 100.43, 100.44, 100.45, 100.46, 100.47, 100.48, 100.49, 100.50, 100.51, 100.52, 100.53, 100.54, 100.55, 100.56, 100.57, 100.58, 100.59, 100.60, 100.61, 100.62, 100.63, 100.64, 100.65, 100.66, 100.67, 100.68, 100.69, 100.70, 100.71, 100.72, 100.73, 100.74, 100.75, 100.76, 100.77, 100.78, 100.79, 100.80, 100.81, 100.82, 100.83, 100.84, 100.85, 100.86, 100.87, 100.88, 100.89, 100.90, 100.91, 100.92, 100.93, 100.94, 100.95, 100.96, 100.97, 100.98, 100.99, 101.00 'DO' 'BEGIN' INREAL(98, Y); TEST(X, Y, 100 + I / 100); I := I + 1 'END'; PRINTEQ; I := 1; 'FOR' X := 10000.01,10000.02,10000.03,10000.04,10000.05, 10000.06,10000.07,10000.08,10000.09,10000.10, 10000.11,10000.12,10000.13,10000.14,10000.15, 10000.16,10000.17,10000.18,10000.19,10000.20, 10000.21,10000.22,10000.23,10000.24,10000.25, 10000.26,10000.27,10000.28,10000.29,10000.30, 10000.31,10000.32,10000.33,10000.34,10000.35, 10000.36,10000.37,10000.38,10000.39,10000.40, 10000.41,10000.42,10000.43,10000.44,10000.45, 10000.46,10000.47,10000.48,10000.49,10000.50, 10000.51,10000.52,10000.53,10000.54,10000.55, 10000.56,10000.57,10000.58,10000.59,10000.60, 10000.61,10000.62,10000.63,10000.64,10000.65, 10000.66,10000.67,10000.68,10000.69,10000.70, 10000.71,10000.72,10000.73,10000.74,10000.75, 10000.76,10000.77,10000.78,10000.79,10000.80, 10000.81,10000.82,10000.83,10000.84,10000.85, 10000.86,10000.87,10000.88,10000.89,10000.90, 10000.91,10000.92,10000.93,10000.94,10000.95, 10000.96,10000.97,10000.98,10000.99,10001.00 'DO' 'BEGIN' INREAL(98, Y); TEST(X, Y, 10000 + I / 100); I := I + 1 'END'; PRINTEQ; I := 2; 'FOR' X := 0.33333333333333333333,0.12500000000000000000,0.06666666666666666667, 0.04166666666666666667,0.02857142857142857143,0.02083333333333333333, 0.01587301587301587302,0.01250000000000000000,0.01010101010101010101, 0.00833333333333333333,0.00699300699300699301,0.00595238095238095238, 0.00512820512820512821,0.00446428571428571429,0.00392156862745098039, 0.00347222222222222222,0.00309597523219814241,0.00277777777777777778, 0.00250626566416040100,0.00227272727272727273,0.00207039337474120083, 0.00189393939393939394,0.00173913043478260870,0.00160256410256410256, 0.00148148148148148148,0.00137362637362637363,0.00127713920817369093, 0.00119047619047619048,0.00111234705228031146,0.00104166666666666667, 0.00097751710654936461,0.00091911764705882353,0.00086580086580086580, 0.00081699346405228758,0.00077220077220077220,0.00073099415204678363, 0.00069300069300069300,0.00065789473684210526,0.00062539086929330832, 0.00059523809523809524,0.00056721497447532615,0.00054112554112554113, 0.00051679586563307494,0.00049407114624505929,0.00047281323877068558, 0.00045289855072463768,0.00043421623968736431,0.00041666666666666667, 0.00040016006402561024,0.00038461538461538462,0.00036995930447650758, 0.00035612535612535613,0.00034305317324185249,0.00033068783068783069, 0.00031897926634768740,0.00030788177339901478,0.00029735355337496283, 0.00028735632183908046,0.00027785495971103084,0.00026881720430107527, 0.00026021337496747333,0.00025201612903225806,0.00024420024420024420, 0.00023674242424242424,0.00022962112514351320,0.00022281639928698752, 0.00021630975556997621,0.00021008403361344538,0.00020412329046744234, 0.00019841269841269841,0.00019293845263360988,0.00018768768768768769, 0.00018264840182648402,0.00017780938833570413,0.00017316017316017316, 0.00016869095816464238,0.00016439256945586060,0.00016025641025641026, 0.00015627441787779341,0.00015243902439024390,0.00014874312063067083, 0.00014518002322880372,0.00014174344436569809,0.00013842746400885936, 0.00013522650439486139,0.00013213530655391121,0.00012914890869172155, 0.00012626262626262626,0.00012347203358439313,0.00012077294685990338, 0.00011816140848398913,0.00011563367252543941,0.00011318619128466327, 0.00011081560283687943,0.00010851871947911015,0.00010629251700680272, 0.00010413412475268145,0.00010204081632653061,0.00010001000100010001 'DO' 'BEGIN' INREAL(98, Y); TEST(X, Y, 1 / ( I * I - 1 ) ); I := I + 1 'END'; PRINTEQ; 'END' //RUN 0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 0.10, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19, 0.20, 0.21, 0.22, 0.23, 0.24, 0.25, 0.26, 0.27, 0.28, 0.29, 0.30, 0.31, 0.32, 0.33, 0.34, 0.35, 0.36, 0.37, 0.38, 0.39, 0.40, 0.41, 0.42, 0.43, 0.44, 0.45, 0.46, 0.47, 0.48, 0.49, 0.50, 0.51, 0.52, 0.53, 0.54, 0.55, 0.56, 0.57, 0.58, 0.59, 0.60, 0.61, 0.62, 0.63, 0.64, 0.65, 0.66, 0.67, 0.68, 0.69, 0.70, 0.71, 0.72, 0.73, 0.74, 0.75, 0.76, 0.77, 0.78, 0.79, 0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, 1.00, 100.01, 100.02, 100.03, 100.04, 100.05, 100.06, 100.07, 100.08, 100.09, 100.10, 100.11, 100.12, 100.13, 100.14, 100.15, 100.16, 100.17, 100.18, 100.19, 100.20, 100.21, 100.22, 100.23, 100.24, 100.25, 100.26, 100.27, 100.28, 100.29, 100.30, 100.31, 100.32, 100.33, 100.34, 100.35, 100.36, 100.37, 100.38, 100.39, 100.40, 100.41, 100.42, 100.43, 100.44, 100.45, 100.46, 100.47, 100.48, 100.49, 100.50, 100.51, 100.52, 100.53, 100.54, 100.55, 100.56, 100.57, 100.58, 100.59, 100.60, 100.61, 100.62, 100.63, 100.64, 100.65, 100.66, 100.67, 100.68, 100.69, 100.70, 100.71, 100.72, 100.73, 100.74, 100.75, 100.76, 100.77, 100.78, 100.79, 100.80, 100.81, 100.82, 100.83, 100.84, 100.85, 100.86, 100.87, 100.88, 100.89, 100.90, 100.91, 100.92, 100.93, 100.94, 100.95, 100.96, 100.97, 100.98, 100.99, 101.00, 10000.01,10000.02,10000.03,10000.04,10000.05, 10000.06,10000.07,10000.08,10000.09,10000.10, 10000.11,10000.12,10000.13,10000.14,10000.15, 10000.16,10000.17,10000.18,10000.19,10000.20, 10000.21,10000.22,10000.23,10000.24,10000.25, 10000.26,10000.27,10000.28,10000.29,10000.30, 10000.31,10000.32,10000.33,10000.34,10000.35, 10000.36,10000.37,10000.38,10000.39,10000.40, 10000.41,10000.42,10000.43,10000.44,10000.45, 10000.46,10000.47,10000.48,10000.49,10000.50, 10000.51,10000.52,10000.53,10000.54,10000.55, 10000.56,10000.57,10000.58,10000.59,10000.60, 10000.61,10000.62,10000.63,10000.64,10000.65, 10000.66,10000.67,10000.68,10000.69,10000.70, 10000.71,10000.72,10000.73,10000.74,10000.75, 10000.76,10000.77,10000.78,10000.79,10000.80, 10000.81,10000.82,10000.83,10000.84,10000.85, 10000.86,10000.87,10000.88,10000.89,10000.90, 10000.91,10000.92,10000.93,10000.94,10000.95, 10000.96,10000.97,10000.98,10000.99,10001.00, 0.33333333333333333333,0.12500000000000000000,0.06666666666666666667, 0.04166666666666666667,0.02857142857142857143,0.02083333333333333333, 0.01587301587301587302,0.01250000000000000000,0.01010101010101010101, 0.00833333333333333333,0.00699300699300699301,0.00595238095238095238, 0.00512820512820512821,0.00446428571428571429,0.00392156862745098039, 0.00347222222222222222,0.00309597523219814241,0.00277777777777777778, 0.00250626566416040100,0.00227272727272727273,0.00207039337474120083, 0.00189393939393939394,0.00173913043478260870,0.00160256410256410256, 0.00148148148148148148,0.00137362637362637363,0.00127713920817369093, 0.00119047619047619048,0.00111234705228031146,0.00104166666666666667, 0.00097751710654936461,0.00091911764705882353,0.00086580086580086580, 0.00081699346405228758,0.00077220077220077220,0.00073099415204678363, 0.00069300069300069300,0.00065789473684210526,0.00062539086929330832, 0.00059523809523809524,0.00056721497447532615,0.00054112554112554113, 0.00051679586563307494,0.00049407114624505929,0.00047281323877068558, 0.00045289855072463768,0.00043421623968736431,0.00041666666666666667, 0.00040016006402561024,0.00038461538461538462,0.00036995930447650758, 0.00035612535612535613,0.00034305317324185249,0.00033068783068783069, 0.00031897926634768740,0.00030788177339901478,0.00029735355337496283, 0.00028735632183908046,0.00027785495971103084,0.00026881720430107527, 0.00026021337496747333,0.00025201612903225806,0.00024420024420024420, 0.00023674242424242424,0.00022962112514351320,0.00022281639928698752, 0.00021630975556997621,0.00021008403361344538,0.00020412329046744234, 0.00019841269841269841,0.00019293845263360988,0.00018768768768768769, 0.00018264840182648402,0.00017780938833570413,0.00017316017316017316, 0.00016869095816464238,0.00016439256945586060,0.00016025641025641026, 0.00015627441787779341,0.00015243902439024390,0.00014874312063067083, 0.00014518002322880372,0.00014174344436569809,0.00013842746400885936, 0.00013522650439486139,0.00013213530655391121,0.00012914890869172155, 0.00012626262626262626,0.00012347203358439313,0.00012077294685990338, 0.00011816140848398913,0.00011563367252543941,0.00011318619128466327, 0.00011081560283687943,0.00010851871947911015,0.00010629251700680272, 0.00010413412475268145,0.00010204081632653061,0.00010001000100010001, //ALGOL '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' //RUN //ALGOL 'BEGIN' 'INTEGER' I; 'REAL' X; I := 0; X := 0.0; OUTREAL(99, X^I) 'END' //RUN //ALGOL 'BEGIN' 'INTEGER' I; I := 0; OUTREAL(99, I^I) 'END' //RUN //ALGOL 'BEGIN' 'REAL' X; X := - 1.0; OUTREAL(99, 0.0^X) 'END' //RUN //ALGOL 'BEGIN' 'REAL' X; X := - 1.0; OUTREAL(99, 0^X) 'END' //RUN