fortran 90 - exemplosf90

2
MINI-CURSO FORTRAN 90 Exemplos apresentados em Fortran 90 Exemplo 1) PROGRAM circulo IMPLICIT NONE ! Este programa calcula a equação de ! um círculo passando por 3 pontos ! Definições de variáveis REAL :: x1,y1,x2,y2,x3,y3,a,b,r ! Passo 1 PRINT *,”Escreva as coordenadas dos 3 pontos” PRINT *,”na ordem x1,y1,x2,y2,x3,y3” READ *,x1,y1,x2,y2,x3,y3 ! Passo 2 CALL calcula_circulo(x1,y1,x2,y2,x3,y3,a,b,r) ! Passo 3 PRINT *,O centro do circulo que passa & & pelos 3 pontos eh (“,a,”,”,b,”)” PRINT *,”O seu raio eh”,r END PROGRAM circulo Exemplo 2) REAL FUNCTION raiz_cubica(x) IMPLICIT NONE REAL, INTENT(IN) :: x REAL :: log_x log_x = LOG(x) raiz_cubica = EXP( log_x / 3.0 ) END FUNCTION raiz_cubica Exemplo 3) SUBROUTINE raizes(x,raiz2,raiz3,raiz4,raiz5) IMPLICIT NONE REAL, INTENT(IN) :: x REAL, INTENT(OUT) :: raiz2,raiz3,raiz4,raiz5 REAL :: log_x raiz2 = SQRT(x) log_x = LOG(x) raiz3 = EXP(log_x/3.0) raiz4 = EXP(log_x/4.0) raiz5 = EXP(log_x/5.0) END SUBROUTINE raizes

Upload: dafmet-ufpel

Post on 24-Jun-2015

837 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: FORTRAN 90 - Exemplosf90

MINI-CURSO FORTRAN 90

Exemplos apresentados em Fortran 90

Exemplo 1)

PROGRAM circuloIMPLICIT NONE

! Este programa calcula a equação de! um círculo passando por 3 pontos

! Definições de variáveisREAL :: x1,y1,x2,y2,x3,y3,a,b,r

! Passo 1PRINT *,”Escreva as coordenadas dos 3 pontos”PRINT *,”na ordem x1,y1,x2,y2,x3,y3”READ *,x1,y1,x2,y2,x3,y3

! Passo 2CALL calcula_circulo(x1,y1,x2,y2,x3,y3,a,b,r)

! Passo 3PRINT *,O centro do circulo que passa &

& pelos 3 pontos eh (“,a,”,”,b,”)”PRINT *,”O seu raio eh”,r

END PROGRAM circulo

Exemplo 2)

REAL FUNCTION raiz_cubica(x)IMPLICIT NONE

REAL, INTENT(IN) :: xREAL :: log_x

log_x = LOG(x)

raiz_cubica = EXP( log_x / 3.0 )END FUNCTION raiz_cubica

Exemplo 3)

SUBROUTINE raizes(x,raiz2,raiz3,raiz4,raiz5)IMPLICIT NONE

REAL, INTENT(IN) :: xREAL, INTENT(OUT) :: raiz2,raiz3,raiz4,raiz5REAL :: log_x

raiz2 = SQRT(x)log_x = LOG(x)raiz3 = EXP(log_x/3.0)raiz4 = EXP(log_x/4.0)raiz5 = EXP(log_x/5.0)

END SUBROUTINE raizes

Page 2: FORTRAN 90 - Exemplosf90

Exemplo 4)

PROGRAM testa_ifIMPLICIT NONE

! Programa que pede ao usuário dois numeros! e testa qual eh o maior

! Definicao das variaveisREAL :: a,b

! Inicializando as variaveisa=0.0; b=0.0

! Pedido ao usuarioPRINT *,”Entre com dois números:”READ *,a,b

! Testando qual é o maiorIF ( a>b ) THEN

PRINT *,”O primeiro numero eh maior”ELSE IF ( a<b ) THEN

PRINT *,”O segundo numero eh maior”ELSE

PRINT *,”Os dois numeros sao iguais”END IF

END PROGRAM testa_if

Exemplo 5)

PROGRAM tabela_multiplicacaoIMPLICIT NONE

! Um programa para imprimir as tabelas! de multiplicacao de 2 a 12

! Definicao de variaveisINTEGER :: i,j

! Loop externo: define a tabelaDO i=2,12

PRINT *,” “PRINT *,”tabela de multiplicacao do “,i! Loop interno: calcula as multiplicacoes da tabelaDO j=1,12

PRINT ,i,” vezes “,j,” = “,i*jEND DO

END DOEND PROGRAM tabela_multiplicacao