Menu
Coddy logo textTech

Оператор Break

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

Иногда вам нужно выйти из цикла досрочно, до того как он завершится естественным образом. Ключевое слово break позволяет немедленно остановить цикл и продолжить выполнение кода после него.

Представьте, что вы ищете определенное число. Как только вы его нашли, нет смысла продолжать проверять остальные:

for i in 1..10
  if i == 5
    puts "Found it!"
    break
  end
  puts i
end
puts "Loop ended"

Это выводит 1, 2, 3, 4, затем "Found it!", и в конце "Loop ended". Когда i достигает 5, выполняется break, и цикл немедленно останавливается. Числа от 6 до 10 никогда не обрабатываются.

Ключевое слово break работает с любым типом цикла. Вот пример с циклом while:

count = 0
while true
  count += 1
  if count > 3
    break
  end
  puts count
end

Это выводит 1, 2, 3. Хотя условие равно true (что обычно приводило бы к бесконечному циклу), break останавливает цикл, когда count превышает 3.

challenge icon

Задание

Легко

Считайте два целых числа из ввода:

  1. limit, представляющее верхнюю границу диапазона, начинающегося с 1
  2. target — число для поиска

Запустите цикл по числам от 1 до limit. Выводите каждое число на отдельной строке. Когда вы достигнете target, выведите Found! вместо числа и немедленно остановите цикл с помощью break.

Если target находится внутри диапазона, цикл должен завершиться досрочно. Если target больше, чем limit, будут выведены все числа от 1 до limit.

Например, если вводные данные 10 и 4, вывод должен быть следующим:

1
2
3
Found!

Если вводные данные 5 и 8, вывод должен быть следующим:

1
2
3
4
5

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

# Чтение ввода
limit = gets.to_i
target = gets.to_i

# TODO: Напишите ваш код ниже
# Пройти циклом по числам от 1 до limit
# Вывести каждое число на своей строке
# Когда достигнете target, выведите точный текст из инструкций и выйдите из цикла
quiz iconПроверьте себя

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

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

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