Introdução
Bem-vindo ao mundo encantado de Magic Seas, onde nosso protagonista, o sábio Mariner Mage, está em uma busca para descobrir os segredos dos antigos feitiços marinhos. Em meio às águas turbulentas e criaturas místicas, Mariner Mage precisa navegar por ilhas, cada uma guardando uma peça do quebra-cabeça arcano. Mas os mares são traiçoeiros, e o caminho a seguir é incerto. Para completar com sucesso sua missão, o Mariner Mage deve ser versado na arte da magia Python, particularmente no feitiço de 'While Loops'.
Nosso objetivo é ajudar o Mariner Mage a completar esta jornada épica, dominando o poder dos laços while (while loops), garantindo que nenhuma ilha seja deixada inexplorada e que todos os segredos sejam revelados. Você está pronto para içar as velas e partir nesta viagem de programação?
Zarpando
Nesta etapa, você ajudará o Mariner Mage a preparar as velas para sua jornada. Para começar, você criará um feitiço (script) que verifica a direção do vento todos os dias usando um laço while (while loop) até que a direção perfeita do vento seja encontrada. Simularemos isso gerando uma direção de vento aleatória e testando-a em nosso laço.
Edite o arquivo /home/labex/project/wind_checker.py usando seu editor favorito e insira o seguinte código:
import random
## Define the wind directions
possible_directions = ["north", "south", "east", "west"]
## Set perfect direction to east
perfect_direction = "east"
## Start the while loop
while True:
## Simulate checking the wind direction
current_direction = random.choice(possible_directions)
print(f"The wind blows from the {current_direction}.")
## Check if the wind direction is perfect
if current_direction == perfect_direction:
print("Ahoy! Perfect wind for setting sails!")
break
else:
print("Not favorable for sailing. Let's check again tomorrow.")
Execute o script:
python wind_checker.py
Este script fará um loop indefinidamente até que a current_direction corresponda à perfect_direction, que está definida como "east". Toda vez que o laço é executado, ele simula a espera por um novo dia e a verificação da direção do vento novamente.
As informações abaixo devem ser exibidas em seu terminal:
The wind blows from the north.
Not favorable for sailing. Let's check again tomorrow.
The wind blows from the west.
Not favorable for sailing. Let's check again tomorrow.
The wind blows from the east.
Ahoy! Perfect wind for setting sails!
Reunindo Provisões
Nesta etapa, o Mariner Mage precisa reunir provisões suficientes para a jornada. Simularemos isso criando um script provisions.py que usa um laço while (while loop) para contar o número de provisões coletadas até que a quantidade desejada seja atingida.
Abra /home/labex/project/provisions.py e adicione o seguinte código:
## Number of provisions needed
needed_provisions = 10
collected_provisions = 0
## Start the while loop
while collected_provisions < needed_provisions:
## Gather provisions
collected_provisions += 1
print(f"Collected provisions: {collected_provisions}")
print("All necessary provisions gathered! Ready to set sail.")
Execute o script:
python provisions.py
Este código usará um laço while (while loop) para coletar provisões até que collected_provisions seja igual ou exceda needed_provisions.
As informações abaixo devem ser exibidas em seu terminal:
Collected provisions: 1
Collected provisions: 2
Collected provisions: 3
Collected provisions: 4
Collected provisions: 5
Collected provisions: 6
Collected provisions: 7
Collected provisions: 8
Collected provisions: 9
Collected provisions: 10
All necessary provisions gathered! Ready to set sail.
Resumo
Neste laboratório, nossa jornada seguiu a história do Mariner Mage partindo para uma viagem mágica. Através da criação de laços while (while loops) em Python, você apoiou o Mage na espera pelo vento certo e na coleta de provisões suficientes. Essa abordagem narrativa teve como objetivo instilar um senso de aventura, ao mesmo tempo em que reforçava os fundamentos dos laços, engajando a criatividade e conectando o código a uma história vívida.
Ao imaginar os conceitos de programação como elementos mágicos dentro de uma narrativa imersiva, não apenas aprendemos a controlar o fluxo do nosso código, mas também inspiramos nossas mentes a explorar infinitas possibilidades. O sucesso do Mariner Mage é um reflexo do seu domínio sobre os laços while (while loops), e este laboratório é apenas o começo de sua jornada Pythonica pelos vastos mares da programação. Navegue adiante!



