10. Вложенные циклы
Циклы можно вкладывать друг в друга и это дает интересные возможности. Например, если отдельным циклом можно вывести только один ряд (или колонку) значений, то 2 цикла позволяют уже вывести двумерную матрицу.
fn main() {
for row in 1..5 {
print!("Строка {row}: ");
for col in 5..8 {
print!("{} ", col);
}
println!();
}
}
Общий синтаксис:
for variable in range {
for variable in range {
body_of_loop;
}
}
Аналогичным образом делать вложенные циклы используя
Метки
Метки необходимы нам для того, чтобы указать программе к каким именно циклам применять операторы
Общий синтаксис:
'label1: for variable in range {
'label2: for variable in range {
body_of_loop;
continue 'label2;
}
}
Пример с метками для внешнего цикла и для внутреннего:
fn main() {
'out: for _ in 1..5 {
'inn: for j in 1..6 {
if j == 3 {
continue 'inn;
}
print!("{} ", j);
}
println!();
}
}
Здесь пропущен средний столбец, а если мы будем прерывать внешний цикл, то будет напечатано:
Для просмотра заданий и решений, а также публикации своих решений необходимо зарегистрироваться на сайте.
Всё бесплатно, мы просто хотим с вами познакомиться и понять насколько актуально то, что мы делаем.