Menu
Coddy logo textTech

Вложенные конструкции If - Else

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

Что делать, если нужно проверить больше двух условий? Можно поместить оператор if-else внутрь другого оператора if-else. Это называется вложенностью и позволяет обрабатывать несколько точек принятия решений.

score = 85

if score >= 90
  puts "Grade: A"
else
  if score >= 80
    puts "Grade: B"
  else
    puts "Grade: C"
  end
end

Ruby проверяет первое условие. Если оно ложно, она переходит к блоку else, где ожидает ещё одна конструкция if-else. Так создаётся цепочка решений, каждое из которых сужает круг возможностей.

Ruby предоставляет более простой способ записать это с помощью elsif, который объединяет else и if в одно ключевое слово:

score = 85

if score >= 90
  puts "Grade: A"
elsif score >= 80
  puts "Grade: B"
else
  puts "Grade: C"
end

Оба примера дают одинаковый результат, но elsif делает код более плоским и лёгким для чтения. Вы можете объединить в цепочку столько условий elsif, сколько необходимо, а последний блок else обрабатывает всё, что не соответствует предыдущим условиям.

challenge icon

Задание

Легко

Вам предоставлена следующая переменная:

temperature = 15

Создайте систему рекомендаций по погоде, используя if, elsif и else, чтобы классифицировать температуру и вывести соответствующее сообщение:

  • Если temperature больше или равно 30, выведите Hot - Stay hydrated
  • Если temperature больше или равно 20, выведите Warm - Enjoy the day
  • Если temperature больше или равно 10, выведите Cool - Bring a jacket
  • Если temperature больше или равно 0, выведите Cold - Bundle up
  • В противном случае выведите Freezing - Stay indoors

Выведите только одно сообщение, соответствующее температуре.

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

temperature = 15

# TODO: Напишите ваш код ниже, чтобы классифицировать температуру
# Используйте if, elsif и else, чтобы вывести соответствующее сообщение с рекомендацией по погоде
quiz iconПроверьте себя

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

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

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