Carregar apresentação
A apresentação está carregando. Por favor, espere
1
IP – Repetições Prof. Eduardo Falcão
2
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 F5 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! 2
3
Cenário básico Imaginem que vocês querem que o programa de vocês exibam todos os números naturais de 1 à um 10... x = 1 print(x) x = 2 x = 3 #... x = 8 x = 9 x = 10 print(1) print(2) print(3) print(4) print(5) print(6) print(7) print(8) print(9) print(10) x = 1 print(x) x = x + 1 #repetir 6x
4
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 4
5
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) Indica o início de um bloco while condição : comandos 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 5
6
Cenário básico Imaginem que vocês querem que o programa de vocês exibam todos os números naturais de 1 à um 10... x = 1 print(x) x = x + 1 #repetir mais 6x x = 1 while x <= 10: print(x) x += 1
7
Exercício Escreva um programa que exiba todos os números entre dois valores, m e n, informados pelo usuário, de tal modo que 𝑚∈ℕ e n∈ℕ. Caso de teste 1: m = 1, n = 10 Caso de teste 2: m = 10, n = 1 Caso de teste 2: m = 10, n = -5
8
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 B C A B C 3 7 4 8 5 1
9
Exemplo de Teste de Mesa com While
Programa 2 B = 7 A = 3 while (B > A): C = B – 2 print(C) A = A + 1 B = B – 1 A B C Tela A B C Tela 7 3 5 4 6
10
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 B C A B C 5 15 20 3 4 7 1 – 1
11
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 A B C 2 6 5 11 4 15 8 9
12
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 12
14
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?
15
Solução
16
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? 16
17
Solução
18
Homework Livro “IP com Python” – cap. 5 5.1 até 5.13
19
Refs Slides da prof Vanessa Dantas
Introdução à Programação com Python (2ª edição), por Nilo Ney Coutinho
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.