Capítulo 04: Estruturas Repetitivas 🍄⭐

Neste capítulo, vamos aprender a repetir blocos de código usando os laços while e for, com o tema Super Mario!


📖 O que são Estruturas Repetitivas?

Servem para executar o mesmo bloco de código várias vezes, sem precisar escrevê-lo de novo. Também chamadas de loops ou laços.


📖 Exemplo Guiado: Coleta de Moedas

Vamos criar um programa que simula o Mario coletando moedas até atingir o limite de 5 moedas usando o laço while.

  1. Crie o arquivo coleta_moedas.cpp na pasta src/:
#include <iostream>
 
using namespace std;
 
int main() {
    int moedas = 0;
 
    while (moedas < 5) {
        moedas++;
        cout << "Mario coletou uma moeda! Total: " << moedas << endl;
    }
 
    cout << "Parabens! Voce completou a fase!" << endl;
 
    return 0;
}

🕹️ Como Executar e Testar no VS Code

  1. Abra o terminal integrado.
  2. Compile: g++ coleta_moedas.cpp -o coleta_moedas
  3. Execute: ./coleta_moedas

Resultado Esperado:

Mario coletou uma moeda! Total: 1
Mario coletou uma moeda! Total: 2
Mario coletou uma moeda! Total: 3
Mario coletou uma moeda! Total: 4
Mario coletou uma moeda! Total: 5
Parabens! Voce completou a fase!

📊 Ilustração Visual: Fluxo do Laço

Veja como o loop se comporta:

graph TD
    A{"Moedas < 5?"} -->|Sim| B[Coletar Moeda]
    B --> C[Aumentar Contador]
    C --> A
    A -->|Não| D[Fim da Fase]

🛠️ Prática Obrigatória 1: Contagem Regressiva

Crie um programa chamado contagem_bomba.cpp que faça uma contagem regressiva de 5 até 1 (usando o laço for) para simular o tempo de explosão de uma bomba do Bob-omb.


🔑 Gabarito de Código

Prática 1: contagem_bomba.cpp

#include <iostream>
 
using namespace std;
 
int main() {
    cout << "Bob-omb vai explodir!" << endl;
    
    for (int i = 5; i >= 1; i--) {
        cout << i << " ..." << endl;
    }
 
    cout << "💥 CABUM!" << endl;
 
    return 0;
}

📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

(Siga o padrão estabelecido no Guia)


Capitulo Anterior | Proximo Capitulo