Universidade Federal da Paraba Departamento de Cincias Exatas
Universidade Federal da Paraíba Departamento de Ciências Exatas Introdução à Programação Comando de Repetição While Campus IV Rio Tinto Profa. Vanessa Farias Dantas vanessa@dce. ufpb. br
Motivação • Já sabemos fazer programas com fluxo seqüencial e condicional, mas não é suficiente – Como fazer com que um mesmo código seja executado mais de uma vez? – Apertando F 5 a cada execução? Deve ter um jeito melhor!! • Além disso, como ter um resultado geral, obtido com o processamento de um grupo de dados? – Como calcular a média dos alunos de uma turma? – Reescrevendo as instruções e usando muitas variáveis? Certamente que não!
Comando de Repetição – While • Garante que um comando (ou bloco de comandos) seja executado várias vezes – Uma condição é testada no início, e seu valor Verdadeiro determina a execução dos comandos indentados – Ao final de cada execução, a condição será testada novamente para verificar se será necessária outra repetição – Quando a condição testada for falsa, o fluxo de execução seguirá para o próximo comando da sequência
Comando de Repetição While – Sintaxe • Como definir um comando de repetição While? Palavra reservada que indica um comando de repetição baseado em condição Representa uma expressão lógica a ser avaliada (V ou F) while condição : comandos Indica o início de um bloco Instruções cuja execução será determinada pela condição avaliada; devem sofrer indentação (tabulação) para indicar que estão dentro do bloco
Exemplo de Teste de Mesa com While Programa 1 A=3 while (A < 5): B=A+4 C = B // 2 A=A+1 B=A–C A 3 3 3 4 4 4 5 5 B C 7 7 7 8 8 8 1 3 3 3 4 4 4
Exemplo de Teste de Mesa com While Programa 2 A B=7 A=3 while (B > A): C=B– 2 print(C) A=A+1 B=B– 1 C 3 3 B 7 7 7 3 4 4 5 5 7 7 6 6 5 5 4 4 Tela 5 5 4
Exemplo de Teste de Mesa com While Programa 3 A=5 while (A > 0): if (A % 3 == 0): B=A+1 else: B=3*A C=A+B A=A– 2 A 5 5 5 B C 15 15 20 3 3 3 1 1 1 – 1 15 4 4 4 3 3 3 20 20 7 7 7 4 4
Exemplo de Teste de Mesa com While Programa 4 B=2 A=6 while (B < 8): C=B+3 while (A > 2): C=C+A A= A – 2 B=B+3 A=A+B– 1 A B C 2 6 2 5 6 2 11 4 2 15 2 5 8 2 8 8 9 8 8
Importante • Na hora de escrever um comando while, três aspectos merecem especial atenção: – Todas as variáveis testadas na condição precisam ter seus valores iniciais definidos – A condição de parada deve ser bem definida para evitar uma quantidade de repetições maior ou menor que a desejada – Dentro do while, é importante que haja pelo menos uma instrução capaz de modificar a condição de parada. Caso contrário, o código será repetido indefinidamente, causando um loop infinito
Vamos programar? • Escreva um programa que receba como entrada vários números, até que seja informado um número negativo, e informe se cada um deles é par ou ímpar. – O que terá que ser feito para cada número? – Quantas vezes esse procedimento precisará ser repetido? – Qual será a condição de parada nesse caso?
Solução
Vamos programar? • Modifique o programa anterior para que ele funcione para qualquer número, mas exatamente 10 vezes. – A condição de parada será a mesma? – Ainda será necessário usar dois comandos de entrada para o número?
Solução
- Slides: 13