Цикл for с шагом
Часть раздела Основы путешествия по Lua на Coddy. Урок 74 из 90.
Числовой цикл for становится ещё мощнее, если добавить третий аргумент, называемый шагом. Шаг определяет, насколько изменяется переменная цикла при каждом проходе цикла.
Расширенный синтаксис выглядит так:
for variable = start, finish, step do
-- код для повторения
endВот пример, который считает с шагом 2, а не 1:
for i = 2, 10, 2 do
print(i)
endЭтот цикл начинается с 2, доходит до 10 и каждый раз увеличивает значение на 2, выводя: 2, 4, 6, 8, 10.
Также можно использовать отрицательные шаги, чтобы считать в обратном порядке:
for i = 5, 1, -1 do
print(i)
endТак выполняется обратный отсчёт от 5 до 1 с выводом: 5, 4, 3, 2, 1.
Цикл останавливается, как только переменная должна выйти за конечное значение в направлении шага. Если начальное значение уже находится за конечным, как в for i = 1, 5, -1, тело цикла ни разу не выполняется.
Шаг даёт тебе точный контроль над тем, как продвигается цикл, что делает его идеальным для таких задач, как обработка каждого второго элемента списка, создание обратного отсчёта или работа с определёнными числовыми шаблонами.
Задание
ЛегкоСоздай генератор таблицы умножения, который использует числовой цикл for с шагом для вывода кратных 3. Напиши цикл for, который начинается с 3, доходит до 15 и использует шаг 3, чтобы вывести только числа, кратные 3.
Внутри цикла выводи каждое кратное число с новой строки. Это покажет, как параметр шага управляет продвижением цикла, пропуская значения.
Попробуйте сами
-- TODO: Напишите здесь свой код
-- Создайте цикл for от 3 до 15 с шагом 3
-- Выведите каждое кратное число на отдельной строкеВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы 2: Сравнение и логика
Операторы равенстваОператоры сравненияОператор 'and'Оператор 'or'Оператор 'not'Сокращенные вычисленияЗначения Truthy и FalsyИтоги: Простая логика7Основы условной логики
Оператор if-thenОператор if-then-elseОператор elseifИтоги — Сундук с сокровищами10Таблицы, часть 1: Списки
Что такое таблица?Создание таблицыДоступ к элементам по индексуИзменение элементов по индексуОператор длины '#'table.insert()table.remove()Итоги: управление участниками группы13Проект: Простой магазин зелий
Настройка проектаДобавление зелья2Переменные и типы данных
Что такое переменная?ЧислаСтрокиБулевы значенияЗначение 'nil'Функция type()Правила именованияИтоги — Профиль персонажа5Базовый вывод
Вывод литераловВывод переменныхВывод нескольких значенийОбъединение строк и переменныхФункция tostring()ВводПриведение типовПовторение — Отчет о состоянииПовторение — До 1208Основы работы со строками
string.len()string.upper и string.lowerstring.sub()string.rep()string.find()Повторение — Форматирование имени пользователя3Операторы 1: Арифметика и конкатенация
Арифметические операторыОператор остатка от деленияОператор возведения в степеньКонкатенация строкПриоритет операторовПовторение: Простые вычисления6Проект: Вывод характеристик персонажа
Приветственное сообщениеОбъявление характеристик персонажа9Основы функций
Объявление функцииВызов функцииФункции с параметрамиФункции с несколькими параметрамиОператор 'return'Повторение — Калькулятор площади12Основы циклов
Цикл whileЦикл repeat-untilЧисловой цикл forЦикл for с шагомОператор 'break'Повторение — Обратный отсчётПотренируйтесь самостоятельно: Онлайн-компилятор Lua