Циклы
Вве дение
В языке Wave предусмотрены циклы для многократного выполнения кода. Циклы используются для повторного выполнения кода, пока выполняется определённое условие или для выполнения фиксированного числа итераций.
В Wave поддерживаются следующие виды циклов:
-
Цикл while: повторение на основе условия
-
Цикл for: повторение на основе количества
Также предоставляются ключевые слова break и continue для управления потоком выполнения в циклах.
В этом разделе описываются как использовать циклы и ключевые слова управления потоком выполнения.
Цикл while
Цикл while выполняет блок кода до тех пор, пока предоставленное условие является истинным.
Когда условие становится false, выполнение цикла прекращается.
Основная структура
Вот базовый синтаксис циклов while:
while (условие) {
// код для повторения
}
-
Условие должно иметь тип
bool. -
Блок кода заключен в
{}и может содержать одно или несколько операторов.
Пример: вывод от 0 до 4
var i :i32 = 0;
while (i < 5) {
println("i равно {}.", i);
i = i + 1;
}
Этот пример повторяется, пока i меньше 5, выводит значение и увеличивает его на 1.
Цикл for
Цикл for удобен, когда известно количество повторений.
Определяет повторения с использованием начального значения, условия завершения и инструкции изменения.
Основная структура
for (var name: type = initial; condition; increment) {
// код для повторения
}
-
name: переменная, используемая для управления циклами
-
condition: выполняется, пока равно
true -
increment: изменяет значение переменной цикла
Пример: вывод от 1 до 5
for (var i: i32 = 1; i <= 5; i = i + 1) {
println("i = {}", i);
}
Вложенные циклы
Можно разместить один цикл внутри другого, это называется вложенными циклами. Полезно, например, для обхода двумерных массивов или сочетаний.
Пример: двойной цикл while
var i :i32 = 0;
while (i < 3) {
var j :i32 = 0;
while (j < 2) {
println("i={}, j={}", i, j);
j = j + 1;
}
i = i + 1;
}
Оператор break
Оператор break немедленно завершает цикл и выходит из него.
Полезен для остановки цикла при выполнении определенного условия.
Пример: завершение цикла при определен ном значении
var i :i32 = 0;
while (true) {
if (i == 5) {
break;
}
println(i);
i = i + 1;
}
Оператор continue
Оператор continue пропускает оставшуюся часть текущего повторения и начинает следующее.
Используется для выполнения части блока цикла только при удовлетворении определенного условия.
Пример: вывод только четных чисел
for (var i: i32 = 0; i <= 10; i = i + 1) {
if (i % 2 == 1) {
continue;
}
println(i);
}
Резюме
| Синтаксис | Описание |
|---|---|
| while | Повторяется, пока условие истинно |
| for | Выполнение повторений с использованием начального значения, условия и инструкции изменения |
| break | Немедленно завершает цикл |
| continue | Пропуск к следую щему повторению |
Циклы в Wave созданы для гибкого выполнения повторяющихся задач как на основе условий, так и количества итераций.
Совместное использование операторов break и continue позволяет более точно управлять потоком выполнения циклов.