begin comment lib 1; 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(1,sum(1, a)); outreal(1,sum(2, b)); end algol begin comment lib 1; procedure recursive(level, l); value level; integer level; label l; begin if level \= 0 then recursive(level - 1, exit) else goto l; exit :; outreal(1,level) end; recursive(10, exit); exit :; end algol begin comment lib5; 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(1,1); l2 :; outreal(1,2); labelbyvalue(s[one]); end algol begin comment lib 1; 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(1,s); for i := 1 step 1 until 9 do if a[i] \= i then outreal(1,i) end algol begin comment lib1; 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(1, x); outreal(1, .0000000000000000123456789123456789); outreal(1, 3.1415926535897932384626433832795028841972); x := y := .0000001; for i := 1 step 1 until 13 do begin outreal(1, x); outreal(1, y); x := 10.0 * x; y := 110 * x / 10.0 end end algol begin procedure p(l); integer l; l : begin real a; goto l; l :; goto ll end; p(1); ll :; end algol begin comment lib 1; integer s; procedure p(f, g); procedure f, g; begin integer x; procedure r; begin outreal(1, s); outreal(1, 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 algol begin comment lib 1; 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(1, x) end p; n1 := 4; n2 := 2; p(5, dummy); n2 := 0; p(7, dummy); end algol begin comment lib 1; integer s; procedure p(f, g); procedure f, g; begin integer x; procedure r(f, g); procedure f, g; begin outreal(1, s); outreal(1, 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( q, q ); g( q, q) end q; s := 0; p(q, p); end algol begin comment lib 1; 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(1, x) end p; n1 := 4; n2 := 2; p(5, l2); n2 := 0; p(7, l2); l2:; end kdf9