Sintaxe Básico
Detalhes: Última Atualização em 16 Junho 2021
Um programa em Fortran é construído a partir de uma coleção de unidades de programas: programa principal, e subprogramas também chamados na literatura de procedures. Em fortran moderno, versões superiores a versão Fortran 90, os subprogramas tanto internos como externos, sõa classificados em subrotinas, funções e módulos, esse último serve como um contêiner para os dois anteriores.
Cada programa em Fortran contém apenas um programa principal e pode, ou deve, conter outras unidades de programas.
A sintaxe do corpo de um programa (código fonte) em Fortran é a seguinte:
program program_name implicit none ! declaração de tipos e variáveis ! instruções executáveis end program program_name
Um código fonte de um programa simples em fortran Por exemplo, escrevendo um código fonte de um programa simples em fortran que soma dois números e apresenta o resultado:
program addNumbers ! Este programa simples executa a soma de dois numeros implicit none ! Declaração de tipos e variáveis real :: a, b, result ! Instruções executáveis a = 12.0 b = 15.0 result = a + b print *, 'O total é ', result end program addNumbers
Após compilar o código fonte fortran e executar o programa, o resultado produzido será:
O total é 27.0000000
Note que:
- Todos os programas (código fonte) em Fortran começam com a instrução palavra chave (comando)
program
seguido pelo nome do programa. - A instrução
implicit none
permite ao compilador efetuar uma checagem para verificar se todas as variáveis e seus respectivos tipos foram declarados apropriadamente. Como boa prática de programação, use sempre esta instruçãoimplicit none
no início de cada programa que você escrever. - Comentários em Fortran são iniciados pelo símbolo de exclamação
!
, assim todos os caracteres após o símbolo, exceto em uma cadeia literal (string), são ignorados pelo compilador. - O comando
print *,
mostra os dado na tela - A identação das linhas de código é uma boa prática de programação mantendo a legibilidade do código fonte. Embora não seja consenso, o padrão é 2 ou 4 espaços.
- O compilador Fortran é insensível à caixa case insensitive dos caracteres, exceto para as cadeias literais, ou seja o código fonte aceita tanto letras maiúsculas quanto minúsculas.
Conjunto básico da sintaxe
O conjunto de caracteres básicos da linguagem Fortran contém:
- As letras
[A-Z,a-z]
(exceto acentuadas e cedilha) - Os dígitos
[0-9]
- O símbolo sublinhado
_
- Os caracteres especiais
= : + espaço - * / ( ) [ ] , . $ ' ! " % & ; ?
- Tokens são compostos de caracteres do conjunto básico. Um Token pode ser uma palavra chave, um identificador, uma constante, uma cadeia literal ou um símbolo.
NOTA As instruções, ou como conhecidas na literatura inglesa por statements, são feitas de tokens.
identificador
Um identificador é um nome usado para identificar uma variável, um subprograma ou quaisquer outros itens definidos pelo usuário. Um nome em Fortran deve obedecer às seguintes regras:
- Não pode conter mais do que 31 caracteres.
- Deve ser composto dos caracteres alfanuméricos
[A-Z,a-z]
( exceto acentuadas e cedilha), dos dígitos[0-9]
e do símbolo sublinhado_
. Ex: progSoma_01_2016, raio, Altura_1. - O primeiro caracter de ser uma letra.
- Os nomes são insensíveis à caixa (tanto faz Maiúsculas ou minúsculas).
Palavras reservadas
Palavras reservadas ou palavras chave, conhecida na literatura inglesa como Keywords são palavras especiais, reservadas para a linguagem. Estas palavras reservadas não podem ser usadas como identificadores ou nomes.
A seguir apresentamos uma tabela com algumas da palavras reservadas mais comuns na linguagem Fortran:
Palavras reservadas em Fortran
Não relacionas à entrada e saída de dadosallocatable
allocate
assign
assignment
block
data
call
case
character
common
complex
contains
continue
format
read
cycle
data
deallocate
default
do
double precision
elseelse if
elsewhere
end block
data
end do
end function
end if
end interface
end module
end program
end select
end subroutine
end type
end where
entry
equivalence
exit
external
function
go to
huge
if
implicit
in
inout
integer
intent
interface
intrinsic
kind
len
logical
module
namelist
nullify
only
operator
optional
out
parameter
pause
pointer
private
program
public
real
recursive
result
return
save
select
case
stop
subroutine
target
then
type
use
Where
While
Relacionas à entrada e saída de dados em arquivobackspace
close
endfile
format
inquire
open
read
rewind
Write
Avaliação
Questionário
Teste o que você aprendeu respondendo ao questionário elaborado para fixação dos conceito aprendidos neste módulo.
IDPFPG-1710