23
Algoritmos Computacionais UNIDADE 4 Estruturas de Controle Estrutura seqüencial Estruturas de Seleção Estruturas de Repetição Transição de Português estruturado para uma Linguagem de Programação

Aula 06 - UNIDADE 4 - Estruturas de Controle

Embed Size (px)

Citation preview

Page 1: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� UNIDADE 4

� Estruturas de Controle� Estrutura seqüencial� Estruturas de Seleção� Estruturas de Repetição� Transição de Português estruturado para uma Linguagem de Programação

Page 2: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� SEQUÊNCIA

� Série, ou conjunto de ações, onde todas são executadas uma pós a outra e apenas uma vez.

� Conjunto de comandos que são executados numa seqüência linear, instrução por instrução, de cima para baixo.

� Representação:INICIO

A;B;...;N;

FIM

Page 3: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� Exemplo:

� Escrever um algoritmo para ler as três notas de um aluno e imprimir a sua média aritmética.

PROGRAMA EXEMPLO1 ;INICIO

DECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;LEIA (NOTA1)LEIA (NOTA2)LEIA (NOTA3) ; MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3;ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);

FIM.

Page 4: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� SELEÇÃO / DECISÃO

� Permite a escolha de um grupo de ações a serem executadas quando determinadas condições, representadas por expressões lógicas, forem ou não satisfeitas.

� Escolha entre caminhos alternativos, baseados no teste de condição.

� Tipos:� Seleção Simples� Seleção composta� Seleção encadeada� Seleção de múltipla escolha

Page 5: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� SELEÇÃO SIMPLES:

� Exemplo: � Escrever um algoritmo para ler as três notas de um

aluno e imprimir a sua média aritmética. Se a nota for maior ou igual a 5 deve ser impressa também a mensagem de aluno aprovado.

SE <condição> ENTÃOA

FIM-SE;

Page 6: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:

PROGRAMA CALCULA_MEDIA ;INICIO

DECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;LEIA (NOTA1, NOTA2, NOTA3) ;

MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3 ;

ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);

SE MEDIA >= 5.O ENTÃOESCREVA ( 'ALUNO APROVADO'

)FIM-SE;

FIM

Page 7: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� SELEÇÃO COMPOSTA:

� Exemplo 1: � Escrever um algoritmo para ler as três notas de um

aluno e imprimir a sua média aritmética. Se a nota for maior ou igual a 5 deve ser impresso “Aluno Aprovado” caso contrário “Reprovado”.

SE <condição> ENTÃOA

SENÃO B

FIM-SE;

Page 8: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO 1:

PROGRAMA CALCULA_MEDIA;INICIO

DECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;LEIA (NOTA1, NOTA2, NOTA3) ;

MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3 ;

ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);

SE MEDIA >= 5.O ENTÃOESCREVA ( 'ALUNO APROVADO'

);SENÃOESCREVA ( 'ALUNO REPROVADO' );FIM-SE;

Page 9: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO 2:

� Modificar o algoritmo anterior, calculando e imprimindo o número de pontos que o aluno excedeu a média (no caso dele ter sido aprovado) ou o número de pontos que ficaram faltando para a média (no caso dele ter sido reprovado).

� MEDIA = 5

Page 10: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO 2:PROGRAMA CALCULA_MEDIA;

INICIODECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;

DIFER : REAL;LEIA (NOTA1, NOTA2, NOTA3) ;MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3 ;ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);SE MEDIA >= 5.0 ENTÃO

ESCREVA ( 'ALUNO APROVADO' );DIFER ���� MEDIA – 5.0; ESCREVA ( 'COM ', DIFER,' PONTOS

A MAIS'); SENÃO

ESCREVA ( 'ALUNO REPROVADO' );DIFER ���� 5.0 – MEDIA; ESCREVA( 'COM ', DIFER,' PONTOS

A MENOS'); FIM-SE;

Page 11: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais� ESTRUTURAS DE CONTROLE

� SELEÇÃO ENCADEADA:

� Exemplo: � Escrever um algoritmo para ler as três notas de um aluno

e imprimir a sua média aritmética. Se a nota for maior ou igual a 7 deve ser impressa a mensagem de aluno aprovado sem prova final. Se a média for maior que 5 deve ser impressa a mensagem de aluno em prova final. Se a média for menor que cinco deve ser impressa a mensagem de aluno reprovado.

SE <condição1> ENTÃOSE <condição2> ENTAO

A SENÃO

BFIM-SE

SENÃOC

FIM-SE;

Page 12: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:PROGRAMA CALCULA_MEDIA;

INICIODECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;

LEIA (NOTA1, NOTA2, NOTA3) ;MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3 ;ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);SE MEDIA < 5.O ENTÃO

ESCREVA( 'ALUNO REPROVADO' );SENÃO

SE MEDIA < 7.O ENTÃOESCREVA (´ALUNO EM

PROVA FINAL´);SENÃO

ESCREVA ( 'ALUNO APROVADO' );

FIM-SE;FIM-SE;

FIM

Page 13: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� SELEÇÃO DE MÚLTIPLA ESCOLHA:

� Exemplo: � Escrever um algoritmo que lê um código contendo o

estado civil de uma pessoa, e imprima a descrição do estado civil, sabendo que: 1-solteiro, 2-casado, 3-viuvo, 4-divorciado.

ESCOLHA X CASO <condição> : A;CASO <concidadã> : B;...........CASO <condiciona> : C;CASO CONTRARIO : D;

FIM-ESCOLHA;

Page 14: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:

PROGRAMA INFORMA_ESTADO_CIVIL;INICIODECLARE EST_CIVIL : INTEIRO ;

ESCREVA ( ´DIGITE O CODIGO CIVIL - DE 1 A 4´) ;LEIA (EST_CIVIL) ;ESCOLHA EST_CIVIL

1 : ESCREVA (´SOLTEIRO´) ;2 : ESCREVA (´CASADO´) ;3 : ESCREVA (´VIUVO´) ;4 : ESCREVA (´DIVORCIADO´) ;CASO CONTRARIO:

ESCREVA (´CODIGO ERRADO’);FIM-ESCOLHA;

FIM

Page 15: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO:

� Muitos algoritmos exigem a execução de certos blocos de comandos um número repetido de vezes. Para realizar esse tipo de execução é necessário usar estruturas de repetições.

� Tipos de Repetições:� REPETIÇÃO COM TESTE NO INÍCIO

� Repetição de acordo com uma condição testada no começo do bloco.

� REPETIÇÃO COM TESTE NO FINAL � Repetição de acordo com uma condição testada no fim do

bloco.

� REPETIÇÃO COM UM NÚMERO PRÉ-DEFINIDO DE VEZES

Page 16: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO COM TESTE NO INÍCIO:

� Consiste numa estrutura de controle que permite executar diversas vezes um mesmo trecho do algoritmo, sempre verificando antes de cada execução se é permitido repetir o trecho.

� Fluxo:� A condição é testada antes de executar o bloco.� Enquanto a condição for verdadeira, o bloco de

comandos é executado.� Obs: permite a execução do bloco ZERO ou várias

vezes.

Page 17: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO COM TESTE NO INÍCIO:

� Representação:

ENQUANTO <condição> FAÇAA

FIM-ENQUANTO;

Page 18: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:

� Escrever um algoritmo para calcular a média das notas de uma turma que tem 20 alunos.

PROGRAMA CALCULA_MEDIA;INICIODECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL;

CONT : INTEIRO ;CONT � 0 ;

ENQUANTO CONT < 20 FAÇALEIA (NOTA1, NOTA2, NOTA3) ;

MEDIA � ( NOTA1 + NOTA2 + NOTA3 ) / 3 ;

ESCREVA ( 'A MEDIA DO ALUNO É: ' , MEDIA);

CONT � CONT + 1 ;FIM-ENQUANTO ;

Page 19: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO COM TESTE NO FINAL:

� Consiste numa estrutura de controle que permite executar diversas vezes um mesmo trecho do algoritmo, sempre verificando após cada execução do trecho se é permitido ou não a sua repetição.

� Fluxo:� Executa o bloco de comandos� A condição é testada depois de executar o bloco.� Enquanto a condição for falsa, o bloco de comandos é

executado.� Interrompe a execução do bloco de comandos quando a

condição se tornou verdadeira� Obs: permite a execução do bloco UMA ou várias vezes.

� (o bloco é executado pelo menos uma vez)

Page 20: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO COM TESTE NO FINAL:

� Representação:

REPITA comandos

ATÉ <condição>;

Page 21: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:

� Escrever um algoritmo para calcular a média das notas de uma turma que tem 20 alunos.

PROGRAMA CALCULA_MEDIA;INICIODECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;

CONT : INTEIRO ;CONT � 0 ;REPITA

LEIA (NOTA1, NOTA2, NOTA3) ;MEDIA � ( NOTA1 + NOTA2 + NOTA3 )

/ 3 ;ESCREVA ( 'A MEDIA DO ALUNO É: ' ,

MEDIA);CONT � CONT + 1 ;

ATÉ CONT = 20 ;FIM

Page 22: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� REPETIÇÃO COM UM NÚMERO PRÉ-DEFINIDO DE

VEZES:� Consiste na repetição de um trecho do algoritmo um

número pré-definido de vezes, com a definição de limites fixos.

� Fluxo:� Executa o bloco de comandos

� (valor final – valor inicial) +1 vezes

� Incrementa a variável de controle automaticamente� Representação:

PARA V de vi até vf passo P faça<comando>

FIM-PARA

Page 23: Aula 06 - UNIDADE 4 - Estruturas de Controle

Algoritmos Computacionais

� ESTRUTURAS DE CONTROLE� EXEMPLO:

� Escrever um algoritmo para calcular a média das notas de uma turma que tem 20 alunos.

PROGRAMA CALCULA_MEDIA;INICIODECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ;

CONT : INTEIRO ;PARA CONT DE 1 ATE 20 PASSO 1 FAÇA

LEIA (NOTA1, NOTA2, NOTA3) ;MEDIA � ( NOTA1 + NOTA2 +

NOTA3 ) / 3 ;ESCREVA ( 'A MEDIA DO ALUNO

É: ' , MEDIA);FIM-PARA;

FIM