Vous êtes sur la page 1sur 2

com entrio: o p o n to de exclamao !

indica q ue o
q ue vem aps ele co me ntrio, ele p o de vir e m
q ualquer p osio, inclusive aps os co ma n do s.

Carto de Referncia Fortran 7 7

FORTRAN n o case sensitive , isto no faz


q ualquer distino entre letras m aisculas e
mi n sculas.

Nmeros e m Fortran
Formato de um arquivo e m Fortran
Inteiros (INTEGER)
Pode m ass u mir os seguintes valores:
INTEGER*1 128 a 127
INTEGER*2 32,768 a 32,767
INTEGER*4 2,147,483,648 a 2,147,483,647 (padro)
INTEGER*4 p o de ser rep resen ta do so me n te p or:
INTEGER
A varivel d do
tipo integer*4

A pa rte expo nencial deve ser se para da p or u m d ou


D no lugar do e o u E para real do tipo *8.
Complexo s (COMPLEX)
Preciso si m ples, 6 casas decimais:
COMPLEX*8 o u COMPLEX
Preciso d u pla, 15 casas decimais:
COMPLEX*16
Os valores q ue u m co m plexo p o de ass u mir so os
m e s m o s q ue os reais.
c vale 4,0 reais e 0,3
imaginrios

co m plex c(4.,.3)

integer d

Declarao de varivei s
As variveis a,b e
c so inteiras do tipo
*1

integer*1 a,b,c

colunas 1 a 5: so u s a d a s p a ra escrever o s r t ulos


label o u n m e r o s d e co m a n d o. Estes n m e r os
d eve m se r inteiro s e est ar t o tal me n te co n ti do n e s tas
colunas. No p o de m se re pe tir e n o p r ecisa m est ar
e m or de m cresce n te. Sero u s a d o s p a ra q u e o u t ros
co ma n d o s p o s s a m iden tificar a q u ela lin ha;

A varivel a t m
valor 6 e a m a triz

integer a / 6 /, b(2,2) / 0,1,2,3 /

coluna 6: q u alq uer caractere difere n te d e 0 zero


nesta colu na in dica q u e o q ue ve m a seguir
contin uao d a lin ha a n terior o u d a ulti ma linh a q ue
n o seja u m co m e n t rio. Um m e s m o co m a n d o p o de
estar dividido e m a t 19 lin ha s d e c digo. Entre as
linhas d o co m a n d o p o d e h aver lin ha s e m b ra nco ou
co men t rios;

Os n m eros a ps o * indica m q ua n tos bytes a


varivel ocu pa na m e m ria d o co m p u ta d or. Esta
observao vlida p ara to do s os tipos de variveis.

colunas 7 a 7 2: co m a n d o s o u co me n t rios;
colunas 7 3 a 8 0: ca m p o s d e ide n tificao, s o u s a d os
p elo co m pilad or, p o r t a n t o n o se d eve escrever n e s t as
colunas.

b =

Reais (REAL)
Preciso sim ples, 6 casas decimais (padro):
REAL*4 o u REAL ` 3.402823E + 38
Incre me nto mni mo de ` 1.175494E - 38
Preciso d u pla, 15 casas decimais:
REAL*8 o u DOUBLE PRECISION
` 1.797693134862316D + 308
Incre me nto mni mo de ` 2.225073858507201D - 308

Todas as variveis
co meando co m letras
de A - H e co m letras de
O - Z sero reais

implicit real(A - H,O - Z)

definir constante
valor co m 20

p ara meter(valor = 20)

definir vetor A co m 20
posies A(1)... A(20)

di me nsion A(20) ou
di me nsion A(1:20)

definir m a triz B co m
di me nses 20 X 30

di me nsion B(20,30)

definir objetos de 3
ndices C(i,j,k) co m
i= - 2...4, j=1...5 e
k= 0,1,2

di me nsion C( - 2:4,5,0:2)

A varivel no me poder character n o me*50


ar m a zen ar 50
caracteres

Comando s para leitura / e s crita

Operadores mate mtico s


adio, subtrao,
+
m ultiplicao, diviso e
potenciao

Operadore s relacionais
m e nor q ue (Less T h a n)

.LT.

m e nor ou igual a

.LE.

igual a

.EQ.

diferente de (Not
Equal)

.NE.

m aior q ue (Great
Tha n)

.GT.

m aior ou igual a

.GE.

Operadore s lgico s
and

.AND.

or

.OR.

Fun e s Intrnsicas
seno de X

si n(X)

coseno

cos(X)

tangente

t a n(X)

logarit mo n at ural

log(X)

logart mo deci m al

alog(X)

raiz qua drad a

s q rt(X)

seno hiperblico

si n h(X)

exponencial

exp(X)

arcotange nte

at a n(X)

**
Leitura
read (unida de, for m ato) lista_de_par metros
L dado do teclado e
ar m a zena n a variavl
valores

read(*,*) valores

L dado do arquivo
fort.20 e ar m a ze na
n a varivel valores

read(20,*) valores

L dados do arquivo
fort.20 e ar m a ze na no
vetor a a(1),a(2)...a(20)

read(20,*) (a(i), i = 1,20)

Se a m aior do que
b escreve maior
seno escreve menor

if (a .GT. b)
write(*,*) maior
else
write(*,*) menor
en dif

Se a m aior que b
e b m e nor que c
faa C=2 caso
contrrio faa n ada

if ((a .GT. b) .an d. (b .LT. c))


C=2

Estrutura de Repetio

Escrita
write (unida de, for ma to) lista_de_par metros
Escreve Hello World write(*,*) Hello World
n a tela do co m p utador
Escreve Hello World
no arquivo cha m a do
fort.10

write(10,*) Hello World

Escreve os dados
a(1),a(2)...a(20) no
arquivo fort.21

write (21,*) (a(i),i = 1,20)

do w hile (con dio)


seqncia de co ma n do s
end do
Enqua nto a for m e nor a = 1
ou igual a 7 escreve
d o while (a .LE. 7)
Soma n do
write (*,*) Soman do
a=a +1
en d d o

Estrutura de Repetio (auto - incremento)


do (condio)
seqncia de co ma n do s
end do

As u ni da des 6 e * se no fore m definidas de nt ro d o


p rogra ma, sero considera das co mo a tela d o
co m p u ta dor (write). Da m e s m a for ma as u nida des
5 ou * so definidas co mo o teclado (read).

Para a valendo de 1
at 7 escreve
Soma n do

d o a = 1,7
write (*,*) Soman do
en d d o

Estrutura de repetio
at deter minada linha
(2)

d o 2 a = 1,7
write(*,*) Soman do
2 continue

Compilar Programa e m Fortran no Linux


Estrutura Condicional Compo sta
if (condio) then
seq ncia de co ma n d os 1
else
seq ncia de co man d os 2
end if

f77 [arqProgra m a] - o [arqExecutavel]

Be m - Vindo ao FORm ul a TRANslator

Vous aimerez peut-être aussi