Estruturas de Programação

9
1 Estruturas de Programação Estruturas Condicionais Aula 5 IF (expressão teste) then <comando> ou IF (expressão teste) then <comandos> ELSE <comandos> END IF SELECT CASE (exp_select) CASE (lista case 1) comandos ... CASE (lista case 2) comandos .... CASE DEFAULT comandos ... END SELECT exp_select deve ser uma expressão ou constante INTEIRA, LÓGICA ou LITERAL (apenas uma caractere) CASE DEFAULT - opcional

description

Aula 5. Estruturas de Programação. Estruturas Condicionais. exp_select deve ser uma expressão ou constante INTEIRA, LÓGICA ou LITERAL (apenas uma caractere) CASE DEFAULT - opcional. IF Aritmético IF (exp_arit)n1,n2,n3 exp_arit: expressão aritmética inteira n1,n2,n3: números de comandos. - PowerPoint PPT Presentation

Transcript of Estruturas de Programação

Page 1: Estruturas de Programação

1

Estruturas de Programação

Estruturas Condicionais

Aula 5

IF (expressão teste) then <comando>

ou

IF (expressão teste) then

<comandos>

ELSE

<comandos>

END IF

SELECT CASE (exp_select)

CASE (lista case 1)

comandos ...

CASE (lista case 2)

comandos ....

CASE DEFAULT

comandos ...

END SELECT

exp_select deve ser uma expressão ou constante INTEIRA, LÓGICA ou LITERAL (apenas uma caractere)

CASE DEFAULT - opcional

Page 2: Estruturas de Programação

2

Estruturas de seleção Condição Verdadeira p/ exp_select

CASE(valor) =valor

CASE(:valor) <valor

CASE(valor:) >valor

CASE(valor1:valor2) valor1<=exp_select>=valor2

CASE(valor1,valor2,...,valorn) =valor1 ou valor2 ou ....valorn

IF Aritmético

IF (exp_arit)n1,n2,n3

exp_arit: expressão aritmética inteira

n1,n2,n3: números de comandos

<0 – desvia para o comando n1=0 – desvia para o comando n2>0 – desvia para o comando n3

exp_arit

Page 3: Estruturas de Programação

3

program xif!! Mostra o uso das estruturas IF-THEN-ELSE! e SELECT CASE implicit none integer x print *,'Digite um número inteiro entre 0 e 10: ' read *,x! Verifica se o valor esta dentro do intervalo if ((x>=0.0).AND.( x<=10.0)) then print *,'O valor está dentro do intervalo' else print *,'O valor esta fora do intervalo' call exit ! Finaliza o programa end if! Seleciona o intervalo onde está o número! x deve ser uma constante INTEIRA, LOGICA ou LITERAL select case (x) case (0:3) print *,'Valor está entre 0 e 3' case (4:7) print *,'Valor entre 4 e 7' case (8:10) print *,'Valor entre 8 e 10' end select! end program xif

EXEMPLO:

Page 4: Estruturas de Programação

4

Estruturas de Repetição

r1 – rotula um comando executável, preferencialmente CONTINUE

v – usualmente uma variável inteira; porém pode ser real ou de dupla precisão

n1 – valor inicial de v

n2 – valor fina/l de v

n3 -- incremento

F77 F90

DO r1 v=n1,n2,n3

comandos...

r1 CONTINUE

DO v=n1,n2,n3

comandos...

END DO

Page 5: Estruturas de Programação

5

DO WHILE (F90)

DO WHILE (exp_teste)

comandos...

END DO

Executa a seqüência de comandos enquanto ex_teste for verdadeira

DO IMPLICITO

Estrutura de repetição utilizada em comando READ e WRITE

Exemplo:

READ(u,fmt)(A(I), I=1,10) ! Lê 10 valores para o vetor A(I), I=1..10

Page 6: Estruturas de Programação

6

GO TO ou GOTO

Quando se deseja que o programa avance ou recue de forma não seqüencial.

GOTO r

r é o rótulo de uma linha.

GOTO Implicito

GOTO (r1,r2,...,rn) var

var: Variável ou expressão inteira. Indica o rótulo da linha para a qual será desviado o programa. Valor máximo igual ao número de rótulos.

Page 7: Estruturas de Programação

7

Estruturas Avançadas

Tipos definidos pelo usuário.

TYPE nome

declarações

END TYPE nome

nome: Nome do bloco. Segue as mesmas regras que os nomes de variáveis.

declarações: Declarações de variáveis

Exemplo:TYPE ALUNO

CHARACTER NOME*20

CHARACTER MAT*10

END TYPE ALUNO

Page 8: Estruturas de Programação

8

Comando DATA

DATA var1/valor1/,var2/valor2/,...,varn/valorn/

ou

DATA var1,var2,...,varn/valor1,valor2,...,valorn/

var1, var2,...: Podem ser escalares, vetores ou matrizes.

Exemplo:

integer X(5),A,B,C

data X/10,20,30,40,50/

data A/1/, B/3/, C/5/

Page 9: Estruturas de Programação

9

• Escrever um programa para ordenar, em ordem crescente, o seguinte vetor

X(1:10) 10, 2, 50, 35, 44, -5, -9, 90, 33, -14, 0, 56, 7, 5, 61, 14, 18, 22, 48, 20

- Utilize a declaração DATA para iniciar os valores de X

- Escreva o vetor ordenado para um arquivo no disco