Menu
Coddy logo textTech

Цикл while

Часть раздела Основы путешествия по Lua на Coddy. Урок 71 из 90.

Цикл while идеально подходит для этого — он продолжает выполнять один и тот же код снова и снова, пока условие остаётся true.

Базовый синтаксис цикла while выглядит так:

while condition do
    -- код для повторения
end

Вот простой пример, который выводит числа от 1 до 3:

local count = 1

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

Этот loop сначала проверяет, является ли условие count <= 3 истинным. Если это так, выполняется код внутри него: выводится текущее число, а счётчик увеличивается. Затем он снова проверяет condition, и процесс повторяется, пока condition не станет ложным.

challenge icon

Задание

Легко

Создай систему мониторинга health, которая использует цикл while для отслеживания процесса восстановления player. Начни с создания переменной с именем playerHealth и присвой ей значение 25. Затем создай другую переменную с именем maxHealth и присвой ей значение 100.

Напиши цикл while, который continues, пока health player меньше его максимального health. Inside цикла сначала выведи значение current health, затем increase playerHealth на 15. Поскольку print выполняется до увеличения, последним выведенным значением будет 85: condition цикла снова проверяется после добавления 15 (при этом playerHealth становится равной 100), и, поскольку 100 не меньше maxHealth, loop останавливается, не выводя 100.

Ожидаемый результат:

25
40
55
70
85

Попробуйте сами

-- Инициализируйте здоровье игрока и максимальное здоровье
local playerHealth = 25
local maxHealth = 100

-- TODO: Напишите свой код здесь
-- Создайте цикл while, который продолжается, пока playerHealth < maxHealth
-- Внутри цикла: выведите текущее здоровье, затем увеличьте playerHealth на 15
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Lua