• // получить сумму чисел от 1 до 5 for(i = 1; i <= 5; sum += i++);

Console.WriteLine("Сумма равна " + sum);

}

}

Выполнение этой программы дает следующий результат.

Сумма равна 15

Обратите внимание на то, что процесс суммирования выполняется полностью в операторе циклаfor,и для этого тело цикла не требуется. В этом цикле особое внимание обращает на себя итерационное выражение.

sum += i++

Подобные операторы не должны вас смущать. Они часто встречаются в программах, профессионально написанных на С#, и становятся вполне понятными, если разобрать их по частям. Дословно приведенный выше оператор означает следующее: сложить со значением переменнойsumрезультат суммирования значений переменныхsumиi,а затем инкрементировать значение переменнойi.Следовательно, данный оператор равнозначен следующей последовательности операторов.

sum = sum + i;

i + + ;

Объявление управляющих переменных в цикле for

Нередко переменная, управляющая циклом for, требуется только для выполнения самого цикла и нигде больше не используется. В таком случае управляющую переменную можно объявить в инициализирующей части оператора циклаfor.Например, в приведенной ниже программе вычисляется сумма и факториал чисел от 1 до 5, а переменнаяi,управляющая цикломfor,объявляется в этом цикле.

// Объявить переменную управления циклом в самом цикле for. using System;

class ForVar {

static void Main() { int sum = 0; int fact = 1;

// вычислить факториал чисел от 1 до 5 for(int i = 1; i <= 5; i++)    {

sum += i; // Переменная i действует в цикле, fact *= i;

}

// А здесь переменная i недоступна.

Console.WriteLine("Сумма равна " + sum);

Console.WriteLine("Факториал равен " + fact);

}

}

Объявляя переменную в циклеfor,не следует забывать о том, что область действия этой переменной ограничивается пределами оператора циклаfor.Это означает, что за пределами цикла действие данной переменной прекращается. Так, в приведенном выше примере переменнаяiоказывается недоступной за пределами циклаfor.Для того чтобы использовать переменную управления циклом в каком-нибудь другом месте программы, ее нельзя объявлять в циклеfor.

Прежде чем переходить к чтению следующего материала, поэкспериментируйте с собственными разновидностями оператора циклаfor.В ходе эксперимента вы непременно обнаружите замечательные свойства этого оператора цикла.

Оператор цикла while

Еще одним оператором цикла в C# является оператор while. Ниже приведена общая форма этого оператора:

while (условие) оператор;

Перейти на страницу:

Похожие книги