![Page 1: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/1.jpg)
COMANDOS DE REPETIÇÃO(WHILE, DO..WHILE E FOR)
Disciplina: AlgoritmosProfessora: Alba [email protected]
http://docente.ifrn.edu.br/albalopes
![Page 2: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/2.jpg)
COMANDOS DE REPETIÇÃO Usada quando se deseja que um trecho do
algoritmo seja repetido várias vezes A quantidade de repetições pode ser fixa ou
depender de uma condição
![Page 3: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/3.jpg)
COMANDOS DE REPETIÇÃO As estruturas de repetição são classificadas em
3 tipos Repetição com teste no início do laço Repetição com teste no final do laço Repetição com variável de controle
São também chamadas de laços de repetição!
![Page 4: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/4.jpg)
REPETIÇÃO COM TESTE NO INÍCIO While
Essa estrutura repete uma sequencia de comandos enquanto uma determinada condição for verdadeira
Essa condição é determinada por uma expressão lógica
![Page 5: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/5.jpg)
ENQUANTO...FAÇA Sintaxe:
while (<expressao-logica> ){<sequencia-de-comandos>
}
<expressao_logica>
Essa expressão é avaliada antes de cada repetição do laço
} Indica o fim da sequencia de comandos . Cada vez que a execução atinge esse ponto, volta-se ao início do laço para que a <expressão-logica> seja avaliada novamenteSe o resultado dessa avaliação for TRUE (VERDADEIRO), a <sequencia-de-comandos> será executada mais uma vez. Caso contrário, a execução prosseguirá a partir do primeiro comando após o }
![Page 6: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/6.jpg)
EXEMPLO Criar um algoritmo para escrever 10x a
mensagem “Programação Orientada a Objetos é muito legal!”
![Page 7: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/7.jpg)
EXEMPLO (NÚMERO FIXO DE VEZES) E se tivesse que escrever a mensagem 1000
vezes? Melhor usar um comando de repetição!
![Page 8: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/8.jpg)
EXEMPLO (NÚMERO FIXO DE VEZES) E se tivesse que escrever a mensagem 1000
vezes? Melhor usar um comando de repetição!É preciso declarar uma
variável para ser utilizada no teste da
condição do laço (variável de controle)
![Page 9: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/9.jpg)
EXEMPLO (NÚMERO FIXO DE VEZES) E se tivesse que escrever a mensagem 1000
vezes? Melhor usar um comando de repetição!É preciso
inicializar a variável de
controle
![Page 10: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/10.jpg)
EXEMPLO (NÚMERO FIXO DE VEZES) E se tivesse que escrever a mensagem 1000
vezes? Melhor usar um comando de repetição!É preciso
IDENTIFICAR a condição de
parada do laço
![Page 11: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/11.jpg)
EXEMPLO (NÚMERO FIXO DE VEZES) E se tivesse que escrever a mensagem 1000
vezes? Melhor usar um comando de repetição!
É preciso ATUALIZAR a
variável de controle do laço
![Page 12: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/12.jpg)
EXEMPLO (NÚMERO INDETERMINADO) Algoritmo para comer um cacho de uva
Não se sabe ao certo quantas uvas tem no cacho Sempre é preciso identificar se há ou não uvas no
cacho para continuar comendo...
![Page 13: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/13.jpg)
EXERCÍCIOS Resolva os exercícios a seguir usando
comandos de repetição1. Calcular a soma dos números de 1 a 20 usando
comando de repetição 2. Escrever os números pares existentes entre 1 e
203. Ler um número e calcular seu fatorial
Ex: 5! = 5 * 4 * 3 * 2 * 1 4. Ler 10 números do usuário e calcule a média5. Ler a idade de várias pessoas e calcular a
média das idades. Encerrar a execução quando valor negativo for digitado.
![Page 14: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/14.jpg)
EXERCÍCIOS6. Leia uma sequencia de números do usuário e
escreva o dobro de cada número lido. Encerre a execução quando o número digitado for negativo
7. Escreva um algoritmo que calcule a soma dos números pares enquanto o valor da soma for menor do que 100.
![Page 15: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/15.jpg)
COMANDO DE REPETIÇÃO As estruturas de repetição são classificadas em
3 tipos Repetição com teste no início do laço Repetição com teste no final do laço Repetição com variável de controle
![Page 16: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/16.jpg)
REPETIÇÃO COM TESTE NO FINAL É semelhante à estrutura while, porém a
condição de teste fica no final do laço A sequência de comandos dentro do do...while
é realizada no mínimo uma vez, diferente do while, que pode nem ser executada.
![Page 17: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/17.jpg)
ESTRUTURA DO...WHILE Sintaxe:
do{<comandos>
}while( <condicao> );
<comandos> Sequencia de comandos a ser repetida
<condicao> Condição a ser avaliada para verificar se o laço deve ser executado mais uma vez.É uma expressão lógica que resulta em verdadeiro ou falso
![Page 18: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/18.jpg)
ESTRUTURA DO...WHILE Exemplo: Subir escada
![Page 19: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/19.jpg)
EXEMPLO Escreva um algoritmo usando a estrutura
DO...WHILE que leia uma sequência de dois números, calcule e escreva o valor da soma desses dois números. Após escrever o resultado de soma, pergunte ao usuário se ele deseja ler novo valor. O programa deve finalizar se a resposta do usuário for “não”.
![Page 20: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/20.jpg)
ESTRUTURA DO...WHILE
![Page 21: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/21.jpg)
EXERCÍCIOS1. Leia 10 números e exiba qual foi o menor
número digitado pelo usuário. 2. Leia 20 números e exiba qual foi o maior
número digitado pelo usuário.
![Page 22: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/22.jpg)
EXERCÍCIOS3. Escreva um algoritmo usando a estrutura
DO...WHILE que leia simule o funcionamento de um banco.
O algoritmo deve, inicialmente, ler o saldo atual do cliente, e em seguida, entrar em um laço que leia qual operação o usuário deseja realizar: Saque ou Depósito
Em seguida, deve ler o valor. Se a operação a ser realizada for saque, o valor deve ser
subtraído do saldo. Se a operação for depósito, o valor deve ser adicionado ao
saldo. Ao final de cada operação, deve ser lido do usuário a
informação se ele deseja realizar uma nova operação. O programa deve continuar executando até que o usuário informe que não possui mais operações para realizar.
![Page 23: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/23.jpg)
COMANDO DE REPETIÇÃO As estruturas de repetição são classificadas em
3 tipos Repetição com teste no início do laço Repetição com teste no final do laço Repetição com variável de controle
![Page 24: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/24.jpg)
REPETIÇÃO COM VARIÁVEL DE CONTROLE Quando se conhece o número de vezes que um
trecho do algoritmo deve ser repetido, deve ser utilizado uma estrutura com variável de controle
É utilizada a estrutura FOR Essa estrutura descreve a repetição de um número
definido de vezes, indicando já na estrutura, o valor inicial da variável, a condição de parada e o incremento.
![Page 25: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/25.jpg)
REPETIÇÃO COM VARIÁVEL DE CONTROLE
Sintaxe:for (<inicialização>; <condicao>; <incremento> ){
<comandos>}
<inicialização>
Indica o valor inicial da variável de controle
<condição> Realiza um teste na variável de controle para verificar se o laço deve prosseguir ou não.
<limite> Expressão que especifica o valor máximo que a variável contadora pode alcançar
<incremento> É uma expressão que especifica o incremento que será acrescentado à variável contadora em cada repetição do laço.
![Page 26: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/26.jpg)
ESTRUTURA PARA Exemplo: Subir escada
![Page 27: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/27.jpg)
ESTRUTURA PARA Exemplo: Escrever número pares entre 0 e 20
![Page 28: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/28.jpg)
ESTRUTURA PARA Exemplo: Calcular a média de 3 números
![Page 29: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/29.jpg)
EXERCÍCIOS1. Escrever 20 vezes a mensagem “Eu vou tirar 10.0
na próxima prova de P.O.O!”2. Escrever os números ímpares de 1 a 203. Um cliente de supermercado fez uma compra de 20
itens. Leia o preço de cada item e calcule o total que a pessoa vai pagar.
4. Leia a quantidade de alunos existentes em uma sala de aula e para cada aluno, leia a sua média final. Ao final, escreva a quantidade de alunos que foi aprovada por média (o aluno é aprovado por média se sua média final for maior ou igual a 6,0)
![Page 30: Comandos de Repetição ( While , Do.. While e For )](https://reader035.vdocuments.net/reader035/viewer/2022062315/568163a0550346895dd49ccc/html5/thumbnails/30.jpg)
REFERÊNCIAS CARVALHO, Flávia Pereira de. Apostila de
Lógica de Programação – Algoritmos. Faculdade de Informática de Taquara, 2007.
SILVEIRA, Angélica. Algoritmos. Curso Técnico de Informática.