Professional Documents
Culture Documents
TUTORIAL DE FORTRAN
Comandos Obrigatórios
- para começar: program
- para terminar: end
- Cabeçalho na abertura do programa contendo a declaração das variáveis:
- O comando implicit none é usado para anular variáveis implícitas. Quando usado, todas as
variáveis inteiras ou não devem ser declaradas.
Operadores Aritméticos:
Adição +
Subtração -
Multiplicação *
Divisão /
Potenciação **
Comando de Atribuição =
Para escrever dados formatados (troca-se o * por uma lista de comandos de formatação)
Esta lista de formatação deve conter informações sobre o tipo de variável e a formatação desejada,
sendo as mais comuns:
Neste caso, ao final da leitura, o valor da variável var será um valor retornado pela função iostat,
que será:
Igual Eq
Diferente Ne
Maior Gt
Menor Lt
Maior e igual Ge
Menor e igual Lê
5
Conjunção And
Exclusão Not
Disjunção Or
Equivalência Eqv
Não equivalência Neqv
Estrutura Condicional
Simples
if(expressão lógica) ...
Intermediária
if (expressão lógica) then
.
.
.
endif
Completa
if(expressão lógica) then
.
. Faça algo
.
else
.
. Faça outra coisa
.
endif
Estrutura de Repetição
Exemplo: do i=1,10,2
.
read (unit,*) dado
.
enddo
- Neste caso, i é a variável de controle, cujo valor inicial é 1, o valor final será 10 e o incremento
será de 2 em 2.
- Se não colocar o valor do passo, automaticamente ele assume o valor unitário.
- Os valores inicial, final e o passo podem ser negativos ou mesmo números decimais.
6
Outras opções:
PS: ao invés de colocar enddo, eu uso a indexação n para dizer onde continuar com o loop.
i=1
do while (i.lt.10)
faça algo
i=i+1
enddo
Neste caso o incremento da variável de repetição deve ser feito pelo usuário.
PS: o valor do flag (que no exemplo acima é 20) deve ser um número inteiro e deve ser colocado
na segunda coluna da linha que deve dar continuidade.
externo: do i = 1,10
.
.
.
interno: do j = 1,10
.
.
.
enddo interno
enddo externo
-----------------------------------------------------------------------------------------------------------------------
A seguir, são listados os códigos-fonte de alguns algoritmos vistos em aula, são eles:
- media_alunos.f; => Calcula a média individual dos alunos, a média global da turma, a
média dos alunos aprovados e dos reprovados.
8
u=3
v=-2
dado1 = 2.4583344256
dado2 = 3.141529
qualquer='teste'
open(10,file='saidaformatada.dat',status='unknown')
rewind 10
stop
end
-----------------------------------------------------------
Este programa gera uma saída formatada da seguinte forma: