Declarao:
Exemplos:
real, dimension(50) :: a, b, c real, dimension (11:60) :: a, b, c
integer, dimension(-20:-1) :: x
logical, dimension(-9:10) :: y
Atribuio de valores
vetor(3) = 1 vetor = (/ 1,2,3,4,5 /) , onde vetor tem cinco elementos Usando o do implcito: vetor = (/ i, i=1, 5 /) vetor = (/ -1, (0, i=2, 49), 1 /) vetor = (/ -1, (0, i= 1,48), 1 /) Obs.: nos dois ltimos casos, todos elementos so zero, exceto o primeiro e o ltimo.
Um elemento do array: como se fosse uma varivel escalar Um grupo de elementos do array: utilizando o do implcito O array todo: apenas o nome do array
Exemplos:
Fortran permite at sete dimenses para um array Declarao: semelhante a vetores, considerando o nmero de dimenses
Exemplos:
real, dimension(3,4) :: a
logical :: b(10,4)
Atribuio de valores
vetor(3,2) = 1 Utilizando a funo intrnseca reshape: reshape((/ 1,2,3,4,5,6 /), (/ 2,3 /)) 1 3 5 2 4 6 integer :: i, j real, dimension(2,2) :: a reshape((/ ((10*i+j, i=1,2), j=1,2) /), (/2,2 /)) 11 12 21 22
product, sum
Exemplos:
matriz_b = tranpose(matriz_a)
max = maxval(matriz_c)
prod = product(vetor_d)
implicit none
integer, parameter:: lin = 3 , col = 2 !dimenses das matrizes integer:: linha !varivel controladora das linhas nos loops
print *, 'Digite os valores da matriz A: ' do linha = 1, lin read *, matriza(linha, 1: col) end do !leitura dos elementos !da matriz A
print * print *, 'Digite os valores da matriz B: ' do linha = 1, lin !leitura dos elementos read *, matrizb(linha, 1: col) !da matriz B end do do linha = 1, lin matrizc(linha, 1: col) = matriza(linha, 1: col) + matrizb(linha, 1: col) end do !formao da matriz C atraves da soma dos elementos !das matrizes A e B print * print *, 'Matriz C = A + B: ' do linha = 1, lin print '(F5.2)', matrizc(linha, 1: col) !visualizao da end do !matriz C
FIM