Обратите внимание на то, что цикл while
for
, цикл while
пропускается.Оператор цикла do-while
Третьим оператором цикла в C# является оператор do-while
for
и while
, в которых условие проверялось в самом начале цикла, в операторе do-while условие выполнения цикла проверяется в самом его конце. Это означает, что цикл do-while
всегда выполняется хотя бы один раз. Ниже приведена общая форма оператора цикла do-while
. do {
} while (
При наличии лишь одного оператора фигурные скобки в данной форме записи необязательны. Тем не менее они зачастую используются для того, чтобы сделать конструкцию do-while более удобочитаемой и не путать ее с конструкцией цикла while. Цикл do-while
В приведенном ниже примере программы цикл do-while
// Отобразить цифры целого числа в обратном порядке.
using System;
class DoWhileDemo {
static void Main() {
int num;
int nextdigit;
num = 198;
Console.WriteLine("Число: " + num);
Console.Write("Число в обратном порядке: ");
do {
nextdigit = num % 10;
Console.Write(nextdigit);
num = num / 10;
} while(num > 0);
Console.WriteLine() ;
}
}
Выполнение этой программы дает следующий результат.
Число: 198
Число в обратном порядке: 891
Приведенный выше цикл действует следующим образом. На каждом его шаге крайняя слева цифра получается в результате расчета остатка от деления целого числа (значения переменной num) на 10. Полученная в итоге цифра отображается. Далее значение переменной num делится на 10. А поскольку это целочисленное деление, то в его результате крайняя слева цифра отбрасывается. Этот процесс повторяется до тех пор, пока значение переменной num не достигнет нуля.
Оператор цикла foreach
Оператор цикла foreach
foreach
речь пойдет в главе 7, где рассматриваются массивы.Применение оператора break для выхода из цикла
С помощью оператора break
break
, цикл завершается, а выполнение программы возобновляется с оператора, следующего после этого цикла. Рассмотрим простой пример программы.// Применить оператор break для выхода из цикла.
using System;
class BreakDemo {
static void Main() {
// Использовать оператор break для выхода из этого цикла,
for(int i= -10; i <= 10; i++) {
if(i > 0) break; // завершить цикл, как только значение
// переменной i станет положительным
Console.Write(i + " ");
}
Console.WriteLine("Готово ! ") ;
}
}
Выполнение этой программы дает следующий результат.
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 Готово!
Как видите, цикл for
break
прерывает его раньше, когда значение переменной i становится положительным.Оператор break
do-while.
// Применить оператор break для выхода из цикла do-while.
using System;
class BreakDemo2 {
static void Main() {
int i;
i = -10;
do {
if (i > 0) break;
Console.Write(i + " ") ;
i++ ;
} while (i <= 10);
Console.WriteLine("Готово!");
}
}
А теперь рассмотрим более практический пример применения оператора break
// Выявить наименьший множитель числа.