next up previous
Next: Bloques de Interfaces Up: Nuevas Facilidades del Fortran Previous: Estructura WHERE ... ELSE

Declaración de Argumentos Dummy

Fortran 90 extiende las posibilidades de declarar argumentos dummy en los procedimientos para darle el formato adecuado a los arreglos que pasan como parámetros.

    SUBROUTINE lee_matriz(m, i_max, j_max)
      IMPLICIT NONE
      INTEGER i_max, j_max
      REAL, DIMENSION(i_max,j_max) :: m
      READ*, m
    END

También existen las declaraciones dummy del formato predefinido, en este caso el formato del arreglo no está especificado.

    SUBROUTINE asume_formato(a, b, n)
      IMPLICIT NONE
      INTEGER :: n
      REAL, DIMENSION(:,:,:) :: a   ! Arreglo de tres dimensiones
      REAL, DIMENSION(-5:,n:) :: b  ! Arreglo de 2 dimensiones
      ...                           ! que inicia en (-5,n)

Las funciones intrínsecas SIZE, SHAPE, LBOUND (lower boundary) y UBOUND (upper boundary) son utilizadas con estas declaraciones para poder escribir códigos más generales.

    SUBROUTINE intercambiar(a, b)
      IMPLICIT NONE                 ! a y b son arreglos de 2 dimensiones
      REAL, DIMENSION(:) :: a, b    ! con formato predefinido
      REAL, DIMENSION(SIZE(a,DIM=1)&! aux tiene las mismas dimensiones
             ,SIZE(a,DIM=2)) :: aux ! del arreglo a
      aux = a
      a = b
      b = aux
    END



Kay A. Tucci K.
Tue Apr 13 17:20:44 GMT-0400 1999