90 likes | 198 Views
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.
E N D
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 <0 – desvia para o comando n1 =0 – desvia para o comando n2 >0 – desvia para o comando n3 exp_arit
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:
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
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
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.
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
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/
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