Menu
Coddy logo textTech

O Loop while

Parte da seção Fundamentos do Journey de Lua da Coddy. Lição 71 de 90.

O loop while é perfeito para isso — ele continua executando o mesmo código repetidamente enquanto uma condição permanecer true.

A sintaxe básica de um loop while é assim:

while condition do
    -- código a repetir
end

Aqui está um exemplo simples que imprime números de 1 a 3:

local count = 1

while count <= 3 do
    print(count)
    count = count + 1
end

Esse loop funciona verificando primeiro se count <= 3 é verdadeiro. Se for, o código interno é executado, imprimindo o número atual e aumentando o contador. Em seguida, ele verifica a condição novamente, e o processo se repete até que a condição se torne falsa.

challenge icon

Desafio

Fácil

Crie um sistema de monitoramento de saúde que use um loop while para acompanhar o processo de recuperação de um jogador. Comece criando uma variável chamada playerHealth e atribua a ela o valor 25. Em seguida, crie outra variável chamada maxHealth e atribua a ela o valor 100.

Escreva um loop while que continue enquanto a saúde do jogador for menor que sua saúde máxima. Dentro do loop, primeiro imprima o valor atual da saúde e, em seguida, aumente playerHealth em 15. Como a impressão acontece antes do incremento, o último valor impresso será 85: a condição do loop é verificada novamente após a adição de 15 (fazendo com que playerHealth seja igual a 100) e, como 100 não é menor que maxHealth, o loop para sem imprimir 100.

A saída esperada é:
25
40
55
70
85

Experimente você mesmo

-- Inicialize a saúde do jogador e a saúde máxima
local playerHealth = 25
local maxHealth = 100

-- TODO: Escreva seu código aqui
-- Crie um loop while que continua enquanto playerHealth < maxHealth
-- Dentro do loop: imprima a saúde atual, depois aumente playerHealth em 15
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de Lua online