Menu
Coddy logo textTech

Оператор elseif

Часть раздела Fundamentals путешествия по Lua на Coddy — урок 42 из 90.

Оператор elseif позволяет проверять несколько условий последовательно. Это расширяет базовую структуру if-then-else для обработки сложных сценариев принятия решений.

Вот синтаксис использования elseif:

if condition1 then
    -- код для первого условия
elseif condition2 then
    -- код для второго условия
elseif condition3 then
    -- код для третьего условия
else
    -- код, если ни одно из условий не верно
end

Lua вычисляет каждое условие сверху вниз. Когда оно находит первое условие, которое равно true, оно выполняет этот блок кода и пропускает все остальные условия. Если ни одно из условий не является true, выполняется блок else (если он есть).

Вот практический пример с оценкой успеваемости:

local grade = 85

if grade >= 90 then
    print("Excellent")
elseif grade >= 70 then
    print("Good")
else
    print("Needs Improvement")
end

Так как оценка равна 85, первое условие (85 >= 90) — false, но второе условие (85 >= 70) — true, поэтому будет выведено "Good".

challenge icon

Задание

Легко
Создайте систему оценки успеваемости, которая классифицирует результаты учащихся по трем уровням. Объявите переменную с именем studentGrade и присвойте ей значение 75. Используйте оператор if-elseif-else, чтобы проверить оценку и вывести соответствующее сообщение:
  • Если оценка 85 или выше, выведите "Excellent"
  • Если оценка 65 или выше (но меньше 85), выведите "Good"
  • Для всех остальных оценок выведите "Needs Improvement"

Шпаргалка

Оператор elseif позволяет последовательно проверять несколько условий:

if condition1 then
    -- код для первого условия
elseif condition2 then
    -- код для второго условия
elseif condition3 then
    -- код для третьего условия
else
    -- код, если ни одно из условий не является истинным
end

Lua вычисляет каждое условие сверху вниз. Когда она находит первое условие, которое равно true, она выполняет этот блок кода и пропускает все остальные условия.

local grade = 85

if grade >= 90 then
    print("Excellent")
elseif grade >= 70 then
    print("Good")
else
    print("Needs Improvement")
end

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

-- Объявите переменную studentGrade
local studentGrade = 75

-- TODO: Напишите ваш код здесь
-- Используйте оператор if-elseif-else, чтобы проверить оценку и вывести соответствующее сообщение
-- Если studentGrade 85 или выше, выведите "Excellent"
-- Если studentGrade 65 или выше, выведите "Good"
-- В противном случае выведите "Needs Improvement"
quiz iconПроверьте себя

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

Все уроки раздела Fundamentals