Оператор Next
Часть раздела Основы путешествия по Ruby на Coddy — урок 42 из 88.
В то время как break полностью выходит из цикла, иногда вам просто нужно пропустить текущую итерацию и перейти к следующей. Ключевое слово next делает именно это.
Когда Ruby встречает next, он немедленно переходит к следующей итерации цикла, пропуская весь оставшийся код в текущей итерации:
for i in 1..5
if i == 3
next
end
puts i
endЭто выведет 1, 2, 4, 5. Когда i равно 3, ключевое слово next пропускает инструкцию puts и переходит непосредственно к следующей итерации, где i становится равным 4.
Распространенный вариант использования — фильтрация нежелательных значений. Например, вывод только четных чисел:
for num in 1..6
if num % 2 != 0
next
end
puts num
end
# Вывод: 2, 4, 6Нечетные числа пропускаются, и выводятся только четные числа. Представьте, что next говорит «пропусти это и продолжай», в то время как break говорит «останови всё».
Задание
ЛегкоПрочитайте два целых числа из входных данных:
- Число
start - Число
end
Пройдите циклом по числам от start до end. Выведите только те числа, которые не делятся на 3. Используйте next, чтобы пропускать числа, которые делятся на 3.
Каждое число должно быть выведено на отдельной строке.
Например, если входные данные — 1 и 10, результат должен быть следующим:
1
2
4
5
7
8
10Если входные данные — 5 и 9, результат должен быть следующим:
5
7
8Шпаргалка
Ключевое слово next пропускает текущую итерацию цикла и переходит к следующей:
for i in 1..5
if i == 3
next
end
puts i
end
# Вывод: 1, 2, 4, 5Используйте next для фильтрации значений. Например, для вывода только четных чисел:
for num in 1..6
if num % 2 != 0
next
end
puts num
end
# Вывод: 2, 4, 6next пропускает текущую итерацию и продолжает цикл, в то время как break полностью выходит из цикла.
Попробуйте сами
# Чтение входных данных
start = gets.chomp.to_i
end_num = gets.chomp.to_i
# TODO: Напишите ваш код ниже
# Цикл по числам от start до end_num
# Используйте next, чтобы пропустить числа, делящиеся на 3
# Выведите числа, которые НЕ делятся на 3В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение — простая логикаЛогические операторы. Часть 3Логические операторы. Часть 47Калькулятор разделения счета
Приветственное сообщениеПолучение пользовательского ввода13Продвинутая работа с массивами
Срезы массивов через диапазоныСрезы массивов через индексыОператоры массивовМетод include?2Переменные и типы данных
Числа и переменныеСтроковый тип данныхЛогический тип данныхТип данных SymbolПроверка типов данныхПравила именованияПовторение: создание переменных5Принятие решений
Оператор IfКонструкция If - ElseПовторение — Простой калькуляторВложенные конструкции If - ElseОператор Unless8Циклы
Цикл For с диапазонамиЦикл WhileОператор BreakОператор NextПовторение: ФакториалЦикл TimesЦикл UntilВложенные циклыПовторение: Динамический ввод3Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСокращенная арифметикаИтоги: простая математикаОператоры сравнения6Основы ввода-вывода
Вывод с помощью putsВывод с помощью print и pВывод с переменнымиВвод с помощью getsМетод chompПреобразование типовИтоги — Калькулятор возрастаИтоги — Истина или ложь