image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Article image
Carlos CGS
Carlos CGS24/03/2025 14:56
Compartilhe
Microsoft Certification Challenge #3 DP-100Recomendados para vocêMicrosoft Certification Challenge #3 DP-100

#12 - Loops de Repetição While & Loop Aninhado - Parte 2

    🌌 Projeto CodeVerse Python - #12/2025

    Fala Galera Dev! ⚡

    No último artigo, falamos sobre o loop forem Python e como ele nos ajuda a percorrer listas, strings e sequências de números de forma simples. Agora, vamos explorar mais dois tipos de loops fundamentais: o loop whilee os loops aninhados .

    📌 Mas o que são esses loops e o que vamos ver neste arigo?

    • Imagine um jogo onde você precisa de moedas até atingir 100 pontos. Isso é um loop while na prática: ele continua rodando enquanto uma condição é verdadeira.
    • Agora, pense em um jogo com várias fases, onde cada fase tem várias rodadas. Aqui, estamos lidando com loops aninhados , ou seja, um loop dentro de outro!

    🔹Além de entender esses loops, vamos aplicar o conhecimento criando um pequeno jogo em Python: o "Número Secreto"! Nele, o jogador precisará adivinhar um número gerado aleatoriamente, e o loop de reprodução garantirá que o jogo continue até que o número correto seja encontrado.

    Bora para cima desse aprendizado e criar nosso próprio jogo em Python?

    🔄 Loop "while" em Python

    O loop "while" é utilizado quando não sabemos exatamente quantas vezes a repetição deve ocorrer. Ele continua rodando enquanto uma condição for verdadeira.

    📌 Estrutura básica:

    contador = 0
    while contador < 5:
      print("Contagem:", contador)
      contador += 1
    

    🔹 Saída:

    Contagem: 0
    Contagem: 1
    Contagem: 2
    Contagem: 3
    Contagem: 4
    

    🛠 Como funciona?

    • O loop começa com a palavra-chave while, seguida de uma condição.
    • Enquanto essa condição for verdadeira, o bloco de código dentro do loop será executado.
    • Para evitar loops infinitos, é essencial garantir que a condição se tornará falsa em algum momento (como incrementando o contador acima).

    ♻️ Loops aninhados

    Loops aninhados são loops dentro de loops! Eles são muito úteis quando precisamos repetir uma ação para cada item de nossa repetição. Isso é comum em situações como matrizes, tabelas e cálculos combinatórios.

    Podemos entender isso como: "Para cada elemento do primeiro loop, percorra todos os elementos do segundo loop."

    📌 Exemplo: Tabuada com loops aninhados

    for i in range(1, 6):  # Primeiro loop: percorre os números de 1 a 5
      for j in range(1, 6):  # Segundo loop: percorre os números de 1 a 5 para cada 'i'
          print(f"{i} x {j} = {i * j}")  # Multiplica e exibe o resultado
      print("---")  # Adiciona um separador após cada bloco da tabuada 
    

    🔹 Saída:

    1 x 1 = 1  
    1 x 2 = 2  
    1 x 3 = 3
    1 x 4 = 4
    1 x 5 = 5
    ---  
    2 x 1 = 2  
    2 x 2 = 4  
    2 x 3 = 6
    2 x 4 = 8
    2 x 5 = 10
    ---
    3 x 1 = 3
    e assim continua até 
    5 x 5 = 25
    

    🛠 Como funciona?

    1️⃣ O primeiro for( i) percorre os números de 1a 5.

    2️⃣ Para cada valor dei , o segundo for( j) percorre os números de 1a 5.

    3️⃣ O print(f"{i} x {j} = {i * j}")exibe a multiplicação do número ipelo número j.

    4️⃣ Quando o segundo loop termina (ou seja, jjá percorreu todos os números de 1a 5), print("---")adicione um separador para organizar a saída.

    5️⃣ O processo se repete para cada número do primeiro loop, formando pequenas tabuadas de 1 a 5.

    Em resumo os loops aninhados ajudam a repetir ações dentro de outra tarefa, permitindo criar padrões estruturados, como tabelas, matrizes e codificação de valores de forma eficiente!

    🔀 Jogo Numero Secreto

    Exemplo prático: Jogo de adivinhação Vamos criar um mini jogo onde o usuário precisa adivinhar um número secreto!

    Vamos entender, passo a passo, como funciona esse código do jogo de adivinhação em Python!

    import random
    numero_secreto = random.randint(1, 10)  # Gera um número aleatório entre 1 e 10
    chute = 0  # Inicializa a variável chute com um valor qualquer (diferente do número secreto)
    
    while chute != numero_secreto:  # Enquanto o chute for diferente do número secreto
      chute = int(input("Tente adivinhar o número (entre 1 e 10): "))  # Solicita o chute do usuário
      if chute < numero_secreto:  # Se o chute for menor que o número secreto
          print("Tente um número maior!")  # Informa ao jogador que deve tentar um número maior
      elif chute > numero_secreto:  # Se o chute for maior que o número secreto
          print("Tente um número menor!")  # Informa ao jogador que deve tentar um número menor
      else:  # Caso o chute seja igual ao número secreto
          print("Parabéns! Você acertou!")  # Parabeniza o jogador por ter acertado 
    

    🛠 Como o código funciona?

    1. Importação do módulo random : A primeira linha, import random, importa a biblioteca random, que nos permite gerar números aleatórios.
    2. Gerando o número secreto : A linha numero_secreto = random.randint(1, 10)gera um número aleatório entre 1 e 10. Esse número será o "número secreto" que o jogador deverá adivinhar.
    3. Inicialização do chute : Uma variável chute é inicialmente definida como 0, para garantir que o loop while seja executado pelo menos uma vez. O usuário ainda não fez nenhum palpite, então o chute é diferente do número secreto.
    4. Estrutura de repetição while : O loop while chute != numero_secreto: faz o jogo continuar enquanto o jogador não acerta o número secreto. A condição chute != numero_secreto verifica se o palpite dado é diferente do número correto.
    5. Entrada do usuário e comparação : Dentro do loop, o programa pede ao jogador para adivinhar o número com a função input(). O valor retornado por input() é uma string, então é convertido para um inteiro com int().
    6. Fornecendo dicas : Depois de cada tentativa, o código verifica se o chute é menor que o número secreto, e o programa informa "Tente um número maior!". Se o chute é maior que o número secreto, o programa informa: "Tente um número menor!".
    7. Fim do jogo : Quando o jogador finalmente acerta o número secreto, elsea mensagem "Parabéns! Você acertou!" é exibido. O loop é encerrado e o jogo termina.

    Em resumo esse código utiliza um loop while para continuar o jogo até que o jogador acerte o número secreto. A cada tentativa, o programa dá dicas para ajudar o jogador a chegar na resposta certa.

    🔥 Concluindo...

    Agora que você domina os loops "for", "while" e os loops aninhados, já pode automatizar muitas tarefas repetitivas! Também vimos como criar o jogo numero secreto utilizando a linguagem python e os conceitos aprendidos até então. No próximo artigo, vamos começar a aplicar nosso aprendizado e outros trechos de código para reforçar nosso aprendizado sobre os temas aprendidos até então, e introduzir a comprenção de assuntos novos! 🚀

    👉 Me siga no GitHub e no LinkedIn para acompanhar o Projeto CodeVerse Python 2025! 📢 Não perca os próximos conteúdos, assine minha newsletter e venha comigo nessa jornada! 💡🔥

    Compartilhe
    Recomendados para você
    Microsoft AI for Tech - Azure Databricks
    Microsoft Certification Challenge #3 DP-100
    Decola Tech 2025
    Comentários (1)
    DIO Community
    DIO Community - 24/03/2025 17:27

    Ótimo artigo, Carlos! Adorei como você explicou de maneira prática os conceitos de loops em Python, especialmente com exemplos tão didáticos como o "Número Secreto" e a tabuada. Esses exemplos ajudam a solidificar o entendimento de conceitos importantes, como o uso de loops while e aninhados. Você também conseguiu conectar bem a teoria à prática, mostrando como esses conceitos são fundamentais no desenvolvimento de programas.

    A utilização do GitHub Copilot também é uma excelente sugestão para melhorar a produtividade. Acho que seria interessante, no futuro, abordar como combinar loops e outras estruturas de controle de fluxo com ferramentas de IA, como o Copilot, para acelerar ainda mais o desenvolvimento. Como você acha que o uso de ferramentas como essa pode afetar o aprendizado de iniciantes em programação?

    Recomendados para vocêMicrosoft Certification Challenge #3 DP-100