Вложенные циклы в C#
Сейчас мы изучим вложенные циклы. Внутри тела цикла можно запустить еще один. Внешний проход задает строку, внутренний заполняет ее повторяющимся символом или числом.
Давайте выведем прямоугольник из 3 строк по 5
звездочек. Счетчик i идет по строкам, счетчик j
собирает символы одной строки:
for (int i = 0; i < 3; i++) {
string line = "";
for (int j = 0; j < 5; j++) {
line += "*";
}
Console.WriteLine(line); // prints *****
}
Первый цикл обычно считает через i, второй через j.
Если появится третий цикл, его счетчик называют k. Это
общепринятые имена.
Пусть нужно получить одну строку, где каждое число от 1 до
9 повторено три раза. Одним циклом здесь не обойтись:
внешний перебирает числа, внутренний повторяет текущее число:
string res = "";
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= 3; j++) {
res += "$i";
}
}
Console.WriteLine(res); // prints 111222333444555666777888999
Тот же прием работает с разными числами в строке. Внутренний цикл дописывает номер столбца:
for (int i = 0; i < 3; i++) {
string line = "";
for (int j = 1; j <= 4; j++) {
if (line != "") {
line += " ";
}
line += "$j";
}
Console.WriteLine(line); // prints 1 2 3 4
}
Выведите прямоугольник из 4 строк по 6 звездочек
в каждой.
Выведите таблицу: 2 строки, в каждой числа от 1 до
5.
Выведите квадрат из 5 строк по 5 звездочек.
С помощью двух вложенных циклов выведите в консоль следующую строку:
С помощью двух вложенных циклов выведите в консоль следующую строку: