! Tableaux multidimensionnels. Auteur: M. Planeto. 03/03/2013
PROGRAM tab
IMPLICIT NONE
   real, dimension(3,3) :: tableau    ! matrice 3x3
   real, dimension(3) :: vecteur, res ! vecteurs
   integer :: i
   vecteur = (/ 1, 2, 3 /)  ! Definir un vecteur "a la main"
   OPEN(UNIT=98,FILE="matinput.txt")  
   DO i=1,3
     READ(98,*) tableau(i,:) ! Lire une matrice ligne a ligne
   ENDDO
   CLOSE(98)
   print *, SIZE(tableau) ! Autres: SHAPE, MAXVAL, MINLOC, etc...
   tableau(:,:) = cos(3.14*tableau(:,:)/6.)  ! Operations
   WHERE (tableau > 0)           ! Boucle WHERE
       tableau = - tableau
   ELSEWHERE
       tableau = tableau**2
   END WHERE
   res = MATMUL(transpose(tableau),vecteur)  ! Usage avance
   print *, res
END PROGRAM tab
