You are on page 1of 23

Algoritmos Computacionais

UNIDADE 4

Estruturas de Controle
Estrutura seqencial Estruturas de Seleo Estruturas de Repetio Transio de Portugus estruturado para uma Linguagem de Programao

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SEQUNCIA Srie, ou conjunto de aes, onde todas so executadas uma ps a outra e apenas uma vez. Conjunto de comandos que so executados numa seqncia linear, instruo por instruo, de cima para baixo. Representao: INICIO A; B; ...; N; FIM

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
Exemplo: Escrever um algoritmo para ler as trs notas de um aluno e imprimir a sua mdia aritmtica. 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.

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SELEO / DECISO Permite a escolha de um grupo de aes a serem executadas quando determinadas condies, representadas por expresses lgicas, forem ou no satisfeitas. Escolha entre caminhos alternativos, baseados no teste de condio. Tipos: Seleo Simples Seleo composta Seleo encadeada Seleo de mltipla escolha

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SELEO SIMPLES:
SE <condio> ENTO A FIM-SE;

Exemplo: Escrever um algoritmo para ler as trs notas de um aluno e imprimir a sua mdia aritmtica. Se a nota for maior ou igual a 5 deve ser impressa tambm a mensagem de aluno aprovado.

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 ENTO ESCREVA ( 'ALUNO APROVADO' ) FIM-SE; FIM

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SELEO COMPOSTA:
SE <condio> ENTO A SENO B FIM-SE;

Exemplo 1: Escrever um algoritmo para ler as trs notas de um aluno e imprimir a sua mdia aritmtica. Se a nota for maior ou igual a 5 deve ser impresso Aluno Aprovado caso contrrio Reprovado.

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 ENTO ESCREVA ( 'ALUNO APROVADO' ); SENO ESCREVA ( 'ALUNO REPROVADO' ); FIM-SE;

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO 2: Modificar o algoritmo anterior, calculando e imprimindo o nmero de pontos que o aluno excedeu a mdia (no caso dele ter sido aprovado) ou o nmero de pontos que ficaram faltando para a mdia (no caso dele ter sido reprovado). MEDIA = 5

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO 2:
PROGRAMA CALCULA_MEDIA; INICIO DECLARE 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 ENTO ESCREVA ( 'ALUNO APROVADO' ); DIFER MEDIA 5.0; ESCREVA ( 'COM ', DIFER,' PONTOS A MAIS'); SENO ESCREVA ( 'ALUNO REPROVADO' ); DIFER 5.0 MEDIA; ESCREVA( 'COM ', DIFER,' PONTOS A MENOS'); FIM-SE;

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SELEO ENCADEADA: SE <condio1> ENTO
<condio2> ENTAO A SENO B FIM-SE SENO SE

Exemplo:

C FIM-SE;

Escrever um algoritmo para ler as trs notas de um aluno e imprimir a sua mdia aritmtica. Se a nota for maior ou igual a 7 deve ser impressa a mensagem de aluno aprovado sem prova final. Se a mdia for maior que 5 deve ser impressa a mensagem de aluno em prova final. Se a mdia for menor que cinco deve ser impressa a mensagem de aluno reprovado.

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 ENTO ESCREVA( 'ALUNO REPROVADO' ); SENO SE MEDIA < 7.O ENTO ESCREVA (ALUNO EM PROVA FINAL); SENO ESCREVA ( 'ALUNO APROVADO' ); FIM-SE; FIM-SE; FIM

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
SELEO DE MLTIPLA ESCOLHA:
ESCOLHA X CASO <condio> : A; CASO <concidad> : B; ........... CASO <condiciona> : C; CASO CONTRARIO : D; FIM-ESCOLHA;

Exemplo: Escrever um algoritmo que l um cdigo contendo o estado civil de uma pessoa, e imprima a descrio do estado civil, sabendo que: 1-solteiro, 2-casado, 3-viuvo, 4-divorciado.

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO:
PROGRAMA INFORMA_ESTADO_CIVIL; INICIO DECLARE 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

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO: Muitos algoritmos exigem a execuo de certos blocos de comandos um nmero repetido de vezes. Para realizar esse tipo de execuo necessrio usar estruturas de repeties. Tipos de Repeties: REPETIO COM TESTE NO INCIO
Repetio de acordo com uma condio testada no comeo do bloco.

REPETIO COM TESTE NO FINAL


Repetio de acordo com uma condio testada no fim do bloco.

REPETIO COM UM NMERO PR-DEFINIDO DE VEZES

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO COM TESTE NO INCIO: Consiste numa estrutura de controle que permite executar diversas vezes um mesmo trecho do algoritmo, sempre verificando antes de cada execuo se permitido repetir o trecho. Fluxo: A condio testada antes de executar o bloco. Enquanto a condio for verdadeira, o bloco de comandos executado. Obs: permite a execuo do bloco ZERO ou vrias vezes.

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO COM TESTE NO INCIO: Representao:
ENQUANTO <condio> FAA A FIM-ENQUANTO;

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO: Escrever um algoritmo para calcular a mdia das notas de uma turma que tem 20 alunos.
PROGRAMA CALCULA_MEDIA; INICIO DECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL; CONT : INTEIRO ; CONT 0; ENQUANTO CONT < 20 FAA LEIA (NOTA1, NOTA2, NOTA3) ; MEDIA ( NOTA1 + NOTA2 + NOTA3 ) / 3 ; ESCREVA ( 'A MEDIA DO ALUNO : ' , MEDIA); CONT CONT + 1 ; FIM-ENQUANTO ;

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO COM TESTE NO FINAL:
Consiste numa estrutura de controle que permite executar diversas vezes um mesmo trecho do algoritmo, sempre verificando aps cada execuo do trecho se permitido ou no a sua repetio.

Fluxo:
Executa o bloco de comandos A condio testada depois de executar o bloco. Enquanto a condio for falsa, o bloco de comandos executado. Interrompe a execuo do bloco de comandos quando a condio se tornou verdadeira

Obs: permite a execuo do bloco UMA ou vrias vezes.


(o bloco executado pelo menos uma vez)

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO COM TESTE NO FINAL: Representao:
REPITA comandos AT <condio>;

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO: Escrever um algoritmo para calcular a mdia das notas de uma turma que tem 20 alunos.
PROGRAMA CALCULA_MEDIA; INICIO DECLARE 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

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
REPETIO COM UM NMERO PR-DEFINIDO DE VEZES: Consiste na repetio de um trecho do algoritmo um nmero pr-definido de vezes, com a definio de limites fixos. Fluxo: Executa o bloco de comandos
(valor final valor inicial) +1 vezes

Incrementa a varivel de controle automaticamente Representao:


PARA V de vi at vf passo P faa <comando> FIM-PARA

Algoritmos Computacionais
ESTRUTURAS DE CONTROLE
EXEMPLO: Escrever um algoritmo para calcular a mdia das notas de uma turma que tem 20 alunos.
PROGRAMA CALCULA_MEDIA; INICIO DECLARE NOTA1, NOTA2, NOTA3, MEDIA : REAL ; CONT : INTEIRO ; PARA CONT DE 1 ATE 20 PASSO 1 FAA LEIA (NOTA1, NOTA2, NOTA3) ; MEDIA ( NOTA1 + NOTA2 + NOTA3 ) / 3 ; ESCREVA ( 'A MEDIA DO ALUNO : ' , MEDIA); FIM-PARA; FIM

You might also like