Fazendo o Computador Repetir Tarefas

Aula 04 - Loops e Repetições

🔄 Loops ⏱️ 90 minutos 🎯 for/while

🎯 Objetivos da Aula

🔄

Loops for

Repetir tarefas com for

🔁

Loops while

Repetir enquanto condição

🔢

range()

Gerar sequências numéricas

📊

Projeto

Tabuada automática

📚 Conteúdo da Aula

�️ A Máquina de Repetir

Por Que Repetir é Importante?

Imagine se você tivesse que escrever "Eu vou estudar programação" 100 vezes à mão! 😰

🌀 Analogia: A Máquina de Lavar
🔄 Ciclo 1: Molhar a roupa
🔄 Ciclo 2: Ensaboar
🔄 Ciclo 3: Enxaguar
🔄 Repetir: Até ficar limpo!
💡 Conceito-chave: Loops são instruções para o computador repetir tarefas automaticamente, poupando nosso tempo e esforço!

🔢 A Função range() - Nossa Contadora

Aprendendo a Contar como um Computador

A função range() é como uma máquina de fazer números em sequência!

range(5)
0, 1, 2, 3, 4
Conta de 0 até 4 (5 números)
range(1, 6)
1, 2, 3, 4, 5
Conta de 1 até 5
range(0, 10, 2)
0, 2, 4, 6, 8
Conta de 2 em 2
🧪 Testando a range():
# Vamos ver os números que a range produz!
print("Contando até 5:")
for numero in range(5):
    print(numero)

print("\nContando de 1 a 5:")
for numero in range(1, 6):
    print(numero)

🔄 O Loop For - "Para Cada Item, Faça..."

Repetindo um Número Específico de Vezes

O loop for é perfeito quando sabemos QUANTAS vezes queremos repetir algo!

for variável in range(quantidade) :
ação a ser repetida
📢 Exemplo: Contador de Sheep
# Contando carneirinhos para dormir! 🐑
print("Vamos contar carneirinhos:")

for i in range(1, 6):
    print(f"Carneirinho número {i}: 🐑")
    
print("Agora posso dormir! 😴")
🎯 Mais Exemplos Práticos:
🎂 Parabéns Automático:
for i in range(3):
    print("Parabéns para você! 🎉")
📝 Lista de Tarefas:
tarefas = ["Estudar Python", "Fazer exercícios", "Brincar"]
for tarefa in tarefas:
    print(f"✅ {tarefa}")

🔁 O Loop While - "Enquanto Isso For Verdade..."

Repetindo Até uma Condição Mudar

O loop while continua repetindo ENQUANTO uma condição for verdadeira!

🔄 FOR (Quantidade fixa)

"Repita 10 vezes"

for i in range(10):
VS
🔁 WHILE (Até condição mudar)

"Repita enquanto x < 10"

while x < 10:
🎮 Exemplo: Jogo de Adivinhação
# Número secreto: 7
numero_secreto = 7
tentativa = 0

print("Adivinhe o número de 1 a 10!")

while tentativa != numero_secreto:
    tentativa = int(input("Sua tentativa: "))
    
    if tentativa < numero_secreto:
        print("Muito baixo! ⬆️")
    elif tentativa > numero_secreto:
        print("Muito alto! ⬇️")
    else:
        print("Parabéns! Você acertou! 🎉")
⚠️ Cuidado com Loops Infinitos!

Sempre certifique-se de que a condição do while pode se tornar falsa, senão o programa nunca para!

❌ Ruim: while True: (nunca para!)
✅ Bom: while contador < 10: (para quando contador chegar a 10)

🎯 Projeto - Tabuada Automática

🚀 Hora de Praticar!

Vamos criar um programa que gera a tabuada de qualquer número usando loops!

1 Solicitar um número do usuário
2 Usar loop for com range(1, 11)
3 Calcular e exibir cada multiplicação
4 Deixar a saída bonita e organizada
Código Completo:
# 🔢 GERADOR DE TABUADA AUTOMÁTICA 🔢
print("=== TABUADA AUTOMÁTICA ===")
numero = int(input("Digite um número para ver a tabuada: "))

print(f"\n🔢 TABUADA DO {numero} 🔢")
print("=" * 25)

for i in range(1, 11):
    resultado = numero * i
    print(f"{numero} x {i:2d} = {resultado:3d}")
    
print("=" * 25)
print("Tabuada completa! 🎉")
🎨 Desafios de Melhoria:
  • 🌈 Adicione cores ou emojis diferentes para cada linha
  • 🔄 Permita que o usuário escolha até que número multiplicar
  • ➕ Crie também tabuadas de soma, subtração e divisão
  • 📊 Mostre apenas os resultados pares ou ímpares

🏠 Desafio para Casa

🎯 Desafio Principal: Contador de Números Ímpares

Crie um programa que conta de 1 a 100, mas pula os números pares (mostra apenas os ímpares)!

💡 Dicas para Começar:
  • Use for i in range(1, 101): para contar até 100
  • Use if i % 2 != 0: para verificar se é ímpar
  • O operador % retorna o resto da divisão
🏗️ Estrutura Inicial:
print("=== CONTADOR DE NÚMEROS ÍMPARES ===")
print("Números ímpares de 1 a 100:")

for i in range(1, 101):
    # Seu código aqui!
    # Dica: verifique se i % 2 != 0
    pass

print("Contagem completa!")
🎯 Desafios Bônus:
🔢 Contador Personalizado:

Permita que o usuário escolha o número inicial, final e o "pulo" (ex: contar de 2 em 2)

🎵 Contador Musical:

Crie um programa que conta até 10, mas substitui múltiplos de 3 por "PIM" e múltiplos de 5 por "POM"

🌟 Pirâmide de Estrelas:

Use loops aninhados para desenhar uma pirâmide com asteriscos (*)

*
**
***
****
*****
🎲 Simulador de Dados:

Simule 20 jogadas de um dado (números de 1 a 6) e conte quantas vezes cada número apareceu

🔮 Próxima Aula:

Na Aula 5, aprenderemos sobre listas! Vamos descobrir como guardar vários itens em uma única variável! 📝✨