Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_1.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
166 Кб
Скачать
☆

Пример 1:

switch (A)

{

case 2: Console.Write("A равно 2"); break;

case 5: Console.Write("A равно 5"); break;

case 10: Console.Write("A равно 10"); break;

default: Console.Write("A не равно не 2, не 5, не 10"); break;

}

Если значение выражения не совпадает ни с одним из значений констант в списке секций case, то выполняется конструкция_d в сек- ции default, которая также должна передавать управление. Секция de- fault также является необязательной.

Пример 2:

switch (action)

{

case "delete": case "create":

case "edit": neededAccessLevel="user"; break; case "read": neededAccessLevel="guest"; break;

default: neededAccessLevel="administrator"; break;

}

if (User.accessLevel!= neededAccessLevel) throw new AccessDenided();

Примечание:

В случае объявления переменных или их первичной инициализа- ции в условных конструкциях (if, switch), и использования этих же переменных вне конструкции в которой они были объявлены, возни- кает ошибка компиляции. В связи с тем, что перед использованием переменная должна быть обязательно инициализирована, а инициа- лизация в условных конструкциях может быть не выполнена. В таком случае инициализация должна проводиться до использования и без условий, даже если созданные условия охватывают все возможные варианты.

2.3. Циклические конструкции

Циклические конструкции (циклы) обычно используют для мно- гократного повторения некоторых действий.

В C# имеется четыре различных циклических конструкции:

  • цикл с предусловием (while);

  • цикл с постусловием (do);

  • цикл со счетчиком (for);

  • цикл перечисления (foreach).

      1. Конструкция с предусловием while

Цикл while используется, как правило, в тех случаях, когда зара- нее неизвестно количество повторений цикла.

Синтаксис оператора while:

while (<выражение>) <конструкция>;

Результат вычисления выражения должен быть логического типа, его значение вычисляется каждый раз перед выполнением конструк- ции (тела цикла), поэтому цикл while называют еще циклом с пред- условием. Выполнение заданной конструкции будет выполняться до тех пор, пока выражение равно true. Если значение выражения false, то происходит выход из цикла.

Для предотвращения бесконечного повторения цикла (зациклива- ния), необходимо, чтобы результат выражения мог измениться на false, для этого в теле цикла должна изменяться хотя бы одна пере- менная, входящая в выражение.

Пример: вычисление суммы ряда, состоящего из 50 элементов.

int s = 0, n = 1; while (n <= 50)

{

s += 1 / n; n++;

}

      1. Конструкция с постусловием do..While

Цикл do..while, как правило, используется в тех случаях, когда за- ранее неизвестно количество повторений (итераций) тела цикла, но необходимо выполнить тело цикла хотя бы один раз. Синтаксис цик- ла do..while:

do <конструкция> while (<выражение>);

В цикле do..while вначале выполняется тело цикла, представлен- ное произвольной конструкцией, затем вычисляется значение выра- жения; если его значение равно true, то вновь выполняется оператор, если значение выражения false, то цикл заканчивается. Если значение выражения равно false с самого начала, то конструкция выполняется лишь один раз. Если выражение никогда не принимает значение false, то оператор выполняется бесконечное число раз, т.е. происходит «за- цикливание».

Пример: вычисление суммы ряда, состоящего из 50 элементов.

double s = 0; int n = 1; do

{

s += 1.0 / n; n++;

} while (n <= 50);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]