Циклы в Lua
Во многих случаях нам нужно выполнять определённые регулярные повторяющиеся операции, поэтому в программе нам нужно многократно выполнять определённые операторы.
Группа многократно выполняемых операторов называется телом цикла, и возможность продолжения повторения определяется условием завершения цикла.
Циклическая структура — это структура потока управления, которая многократно выполняет определённый фрагмент программы при определённых условиях. Программа, которая многократно выполняется, называется телом цикла.
Оператор цикла состоит из двух частей: тела цикла и условия завершения цикла.
Язык Lua предоставляет следующие способы обработки циклов:
| Тип цикла | Описание |
|---|---|
| цикл while | Когда условие истинно, программа многократно выполняет определённые операторы. Перед выполнением операторов она проверяет, истинно ли условие. |
| цикл for | Многократно выполняет указанные операторы, при этом количество повторений можно контролировать в операторе for. |
| repeat...until | Многократно выполняет цикл до тех пор, пока указанное условие не станет истинным |
| Вложенные циклы | Внутри цикла можно вкладывать один или несколько операторов цикла (while do ... end; for ... do ... end; repeat ... until;) |
Операторы управления циклом
Операторы управления циклом используются для управления ходом выполнения программы с целью реализации различных структурных способов программы.
Lua поддерживает следующие операторы управления циклом:
| Оператор управления | Описание |
|---|---|
| оператор break | Выходит из текущего цикла или оператора и начинает выполнение оператора, следующего непосредственно за ним. |
| оператор goto | Передаёт управление программы на метку. |
Бесконечный цикл
В теле цикла, если условие всегда истинно, оператор цикла будет выполняться бесконечно. Ниже в качестве примера используется цикл while:
Пример
do
print("Цикл будет выполняться бесконечно")
end