PROGRAM matrica IMPLICIT NONE INTEGER :: i INTEGER, DIMENSION (2,3) :: a INTEGER, DIMENSION (3,2) :: b a = RESHAPE ( (/ (i, i=1,6) /), (/ 2,3 /) ) CALL transponiranje (a,b,2,3) DO i=1,3 PRINT *,b(i,1:2) END DO END PROGRAM SUBROUTINE transponiranje (aa,bb,n,m) INTEGER :: n,m INTEGER, DIMENSION (n,m) :: aa INTEGER, DIMENSION (m,n) :: bb INTEGER :: i,j DO j=1,n DO i=1,m bb(i,j) = aa(j,i) END DO END DO END SUBROUTINE