⬅ Voltar ao Dashboard Capítulo 5 — Repetições

🔁 A Estrutura while

Seção 5.1 — Repetições e o laço while

🤔 O problema das repetições

Repetições representam a base de vários programas. São utilizadas para executar a mesma parte de um programa várias vezes, normalmente dependendo de uma condição. Por exemplo, para imprimir os números de 1 a 3, poderíamos escrever:

Listagem 5.1 — Imprimindo de 1 a 3print(1) print(2) print(3)

Mas se quisermos usar uma variável x e variar seu valor, poderíamos fazer:

Listagem 5.2 — Usando variávelx = 1 print(x) x = 2 print(x) x = 3 print(x)

Ainda melhor: incrementar x a cada passo, em vez de reatribuir:

Listagem 5.3 — Incrementando xx = 1 print(x) x = x + 1 print(x) x = x + 1 print(x)

Porém, se o objetivo fosse escrever 100 números, teríamos que escrever pelo menos 200 linhas! A estrutura de repetição while resolve esse problema.

🔄 A estrutura while

O while repete um bloco de código enquanto a condição for verdadeira. Seu formato é:

Listagem 5.4 — Formato do whilewhile <condição>: bloco

Para resolver o problema de imprimir de 1 a 3 usando while:

Listagem 5.5 — Imprimindo de 1 a 3 com whilex = 1 while x <= 3: print(x) x = x + 1

Execução passo a passo:

  1. x = 1 — x é inicializado com 1
  2. Condição x <= 3: True → executa o bloco: imprime 1, x vira 2
  3. Condição x <= 3: True → executa o bloco: imprime 2, x vira 3
  4. Condição x <= 3: True → executa o bloco: imprime 3, x vira 4
  5. Condição x <= 3: False → repetição termina

💡 A linha x = x + 1 é essencial! Sem ela, a condição nunca se tornaria False e o programa rodaria para sempre — um loop infinito.

🔢 Imprimindo até um número digitado

A verdadeira vantagem do while é combinar com entrada do usuário. O contador x controla quantas repetições já foram feitas:

Listagem 5.6 — Impressão até um limite digitadofim = int(input("Digite o último número a imprimir: ")) x = 1 while x <= fim: print(x) x = x + 1

Um contador é uma variável utilizada para contar o número de ocorrências de um determinado evento. Aqui, x conta quantas repetições já foram executadas. Note que se o usuário digitar 0, a condição 1 <= 0 é falsa desde a primeira verificação e nada é impresso.

✏ Exercícios

Exercício 5.1

Modifique o programa da Listagem 5.5 para exibir os números de 1 a 100.

Exercício 5.2

Modifique o programa para exibir os números de 50 a 100.

Exercício 5.3

Faça um programa para escrever a contagem regressiva do lançamento de um foguete. O programa deve imprimir 10, 9, 8, ..., 1, 0 e Fogo! na tela.