🦊 FoxWiki

Цикл for

Когда заранее известно, сколько раз нужно выполнить что-то — используют цикл for. Он короче и чище, чем while со счётчиком: счётчик объявляется, изменяется и проверяется автоматически.


Числовой for

Редактор Lua
1
2
3

Синтаксис: for переменная = начало, конец do. Переменная автоматически увеличивается на 1 после каждого шага и цикл завершается когда она превысит конечное значение.

Переменная i существует только внутри цикла — снаружи она недоступна.


Шаг: третий параметр

По умолчанию шаг равен 1. Можно задать любой:

Редактор Lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14

For vs while: когда что выбирать

СитуацияВыбор
Известно точное количество итерацийfor
Нужен счётчик с постоянным шагомfor
Перебираем диапазон чиселfor
Количество итераций зависит от данныхwhile
Несколько условий выходаwhile
Переменный шагwhile

Ранний выход через break

break работает так же как в while — немедленно выходит из цикла:

Редактор Lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Вложенные циклы for

Классический пример — работа с двумерными сетками. Черепашка строит стену ширину × высоту:

Редактор Lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

При вложенных циклах break выходит только из внутреннего:

Редактор Lua
1
2
3
4
5
6

Практические примеры

Заправка всеми предметами в инвентаре:

Редактор Lua
1
2
3
4
5
6
7

Найти самый большой стак в инвентаре:

Редактор Lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Таблица умножения:

Редактор Lua
1
2
3
4
5
6

🚀 Задания

Задание 1 Напиши цикл, который выводит все чётные числа от 2 до 20. Потом — нечётные от 1 до 19.

Задание 2 Напиши обратный отсчёт: от 10 до 1, каждое число с паузой sleep(1). После последнего — вывести "Старт!".

Задание 3 Напиши цикл по слотам инвентаря (1–16): для каждого непустого слота выводить имя предмета и количество. Пустые слоты пропускать.

Задание 4 Черепашка должна построить квадратную платформу 5×5 из блоков первого слота. Напиши вложенный цикл for row / for col. После каждого ряда разворачивайся и переходи к следующему.

Задание 5 Напиши цикл, который ищет в слотах 1–16 предмет с именем "minecraft:coal". Найдя — выводи номер слота и количество. Если не нашёл ни одного — вывести "Уголь не найден".

НазадАвто-шахтёр и инвентарь
ДалееПеребор таблиц