Upload
rian-nascimento
View
7
Download
0
Embed Size (px)
DESCRIPTION
GOOD
Citation preview
Estruturas de Repetio
12/07/2014
Estruturas de Repetio
Para At
Enquanto Faa
Repita At
Exerccios
12/07/2014
Caso os programas necessitem ser executados mais de uma vez, como podemos resolver esse problema?
Todos os programas apresentados at agora no
permitem que sejam executados mais de uma vez.
Se quisermos repetir algum programa precisamos sair do programa e execut-lo novamente.
... Isso invivel
Precisamos permitir repeties.
12/07/2014 Slide 3
Uma estrutura de repetio uma estrutura com controle de fluxo de execuo, que permite repetir diversas vezes um mesmo trecho do programa.
Do mesmo jeito que na estrutura de deciso, a estrutura de repetio depende do teste de uma condio.
So trs os tipos de estruturas de repetio: Repetio com teste no incio: Enquanto ... Faa Repetio com teste no fim: Repita ... At Repetio com varivel de controle Para ... Faa
12/07/2014 Slide 4
12/07/2014 Slide 5
Algoritmo Funo
enquanto faca fimenquanto
Na estrutura ENQUANTO, a verificao da condio para continuao do lao feita na primeira linha. Obs: importante ter um controle da atualizao da varivel, pois, caso contrrio, o algoritmo entrar no estado que chamamos de: looping infinito.
repita ate
Na estrutura REPITA, a realizao do teste lgico realizada na ultima linha da estrutura, ou seja, o cdigo todo executado ao menos uma vez. Caso a condio continue verdadeira, outras repeties sero executadas at que a condio seja falsa.
para de ate passo 1 faca fimpara
O comando PARA incrementa a varivel de controle a partir do valor_inicial, ate que, esta atinja o valor_final, aumentando o valor da varivel de controle at que o valor final seja alcanado, executando os comandos a cada passagem.
A estrutura de repetio Para Faa, deve ser usada quando sabemos o nmero exato de repeties.
Na estrutura de repetio Para Faa devemos usar uma varivel de controle.
Essa varivel deve ser sempre do tipo inteiro ou caracter.
12/07/2014
Calcule a soma de todos os nmeros pares de 2 at 1000.
Um nmero par encontrado quando o resto de sua diviso for igual a zero.
Utilize o operador MOD. Passos para a resoluo do enunciado: Definio do resultado: verificar se o nmero par,
se for par deveremos acumular o valor da soma. Dados de sada: o resultado da soma de todos os
pares. Dados de entrada: nada h para ser solicitado ao
usurio.
12/07/2014 Slide 7
algoritmo "Soma_dos_Pares"
var
cont,result:inteiro
inicio
result
A estrutura de repetio Enquanto utilizada para repetir um bloco de comandos por vrias vezes, sem sabermos ao certo a quantidade exata de vezes.
Para isso, criamos uma condio de teste, que testada j no incio do bloco.
O uso do comando Enquanto ideal, quando precisamos sair do comando assim que atingir algum objetivo.
12/07/2014 Slide 9
Implemente um algoritmo que tenha como objetivo: ler vrias idades, sem limite.
Assim que for digitada a idade igual a zero o programa dever encerrar a leitura e apresentar a mdia de todas as idades informadas e a quantidade de idades informadas.
12/07/2014 Slide 10
Passos para a resoluo, analisando o enunciado: Definio do resultado: calcular a mdia das
idades de vrias pessoas no sabemos o limite precisamos acumular o valor de cada idade e contar quantas pessoas participaram da pesquisa.
Dados de sada: imprimir o valor da mdia das idades informadas e a quantidade de idades informadas.
Dados de entrada: solicitar a idade da pessoa e deve ser do tipo inteiro. Informar que para saber o resultado, deve ser digitada a idade igual a zero.
12/07/2014 Slide 11
algoritmo "Media_idade"
var
idade,acumulador,contador:inteiro
media:real
inicio
media
Escreva ("Informe uma idade - Digite[0] para parar:")
leia(idade)
enquanto (idade0) faca
contador
Realiza o teste da condio no final do comando. Isso quer dizer que ao menos uma vez o comando ser executado.
Esse comando o oposto do comando Enquanto, pois o Repita executa primeiro para depois testar a condio.
12/07/2014 Slide 14
Elabore um programa que ir pedir dois nmeros e um sinal ( + ou ou *). Conforme o sinal, ele ir mostrar o resultado da operao.
Para permitir que se possa repetir o programa, utilize o comando Repita, perguntando ao usurio se ele deseja continuar a testar o programa, informando novos valores.
Para isso, basta criar uma nova varivel, que ir armazenar a resposta (sim ou no).
12/07/2014 Slide 15
algoritmo "Mini_Calculadora"
var
sinal, resposta: caracter
num1,num2:inteiro
inicio
repita
limpatela
escreval ("Programa Mini Calculadora")
escreva ("informe o Primeiro Nmero: ")
leia (num1)
escreva ("informe o Segundo Nmero: ")
leia (num2)
escreva("informe um dos sinais: + - * : ")
leia (sinal)
limpatela
12/07/2014 Slide 16
escolha (sinal)
caso "+"
escreval("A soma dos Nmeros : ",num1+num2)
caso "-"
escreval("A subtrao dos Nmeros : ",num1-num2)
caso "*"
escreval("A multiplicao dos Nmeros : ",num1*num2)
outrocaso
escreva("Sinal Errado - Favor Digitar Certo da Prxima Vez")
fimescolha
escreva("Deseja Repetir o Programa?(S para sim ou N para no)")
leia(resposta)
ate (resposta = "n")
fimalgoritmo
12/07/2014 Slide 17
12/07/2014 Slide 18
Analise o algoritmo abaixo e anote o resultado ao fim do algoritmo:
12/07/2014 Slide 19
algoritmo
var
v1, v2: real
nome, texto: caracter
cont: inteiro
inicio
cont
1. Crie um algoritmo que leia uma sequencia de nmeros, que ser finalizada com o nmero ZERO (0) e escreva a quantidade de nmeros positivos e negativos.
12/07/2014 Slide 20
2. Elabore um algoritmo que receba os dados de uma quantidade de pessoas. A cada leitura sero fornecidos: NOME, IDADE, SEXO. Calcule e exiba a quantidade de homens e mulheres.
Obs.: A leitura ser finalizada com a IDADE ZERO (0).
12/07/2014 Slide 21
3. Ainda com relao a questo 2, elabore um algoritmo que:
Calcule a mdia de idade de homens e mulheres;
Calcule o percentual de homens e mulheres.
12/07/2014 David Remigio Slide 22