Цикл for с шагом
Часть раздела Fundamentals путешествия по Lua на Coddy — урок 74 из 90.
Числовой цикл for становится еще более мощным, когда вы добавляете третий аргумент, называемый шагом. Шаг управляет тем, насколько изменяется переменная цикла при каждом проходе цикла.
Расширенный синтаксис выглядит следующим образом:
for variable = start, finish, step do
-- код для повторения
endВот пример, который ведет счет двойками вместо единиц:
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.
Шаг (step) дает вам точный контроль над тем, как продвигается ваш цикл, что делает его идеальным для таких задач, как обработка каждого второго элемента в списке, создание обратного отсчета или работа с определенными числовыми последовательностями.
Задание
ЛегкоСоздайте генератор таблицы умножения, который использует числовой цикл for с шагом для отображения чисел, кратных 3. Напишите цикл for, который начинается с 3, доходит до 15 и использует шаг 3, чтобы вывести только числа, кратные 3.
Внутри цикла выведите каждое кратное значение на отдельной строке. Это продемонстрирует, как параметр шага управляет прогрессией цикла, пропуская значения.
Шпаргалка
Числовой цикл for может включать третий аргумент, называемый шагом (step), для управления тем, насколько изменяется переменная цикла на каждой итерации:
for variable = start, finish, step do
-- код для повторения
endСчет двойками:
for i = 2, 10, 2 do
print(i) -- выводит: 2, 4, 6, 8, 10
endОбратный отсчет с отрицательным шагом:
for i = 5, 1, -1 do
print(i) -- выводит: 5, 4, 3, 2, 1
endПопробуйте сами
-- TODO: Напишите свой код здесь
-- Создайте цикл for, который начинается с 3, идет до 15 с шагом 3
-- Выведите каждое кратное число на отдельной строкеВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Fundamentals
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'Повторение — Обратный отсчёт