program A; const Max = 50; type index = 1..Max; mat = array [index,index] of real; matice = record A: mat; D: index; {skutečná velikost matice} end; procedure transp(M:matice); {procedura má transponovat matici M} var I,J : integer; Pom: real; begin with M do begin for I:=1 to D do for J:=1 to D do begin Pom:=A[I,J]; A[I,J]:=A[J,I]; A[J,I]:= Pom; end; end; end; begin ....... end.