Лабораторная работа №2. Тема: Программирование алгоритмов циклической структуры

Тема: Программирование алгоритмов циклической структуры

Цель: изучение возможностей C# для программирования алгоритмов циклической структуры.

Теоретические сведения.

Операторы условия.

В C# поддерживаются многие операторы условий и циклов, применяемых в C++, поэтому рассмотрим только отличия.

Оператор условия if-else внешне выглядит, как в C++:

if (условие)

{

...

}

else if (условие)

{

...

}

...

else

{

...

}

Однако, в C# выражение в скобках должны иметь тип bool. Это означает, что выражения типа if(a) /* a не имеет тип bool) */ и if(a = 5) будут вызывать ошибку компиляции. Таким образом C# позволяет избежать известной ошибки, связанной с потерей одного знака = внутри оператора условия.

Условный оператор:

условие? выражение /*условие истинно*/: выражение /*условие ложно*/

 

Оператор множественного выбора:

switch(выражение)

{

case константное выражение:

выражение;

...

оператор выхода из case;

...

default:

выражение;

...

оператор выхода из default;

}

В данном случае отличия от языка C++ более существенны: оператор выхода из метки case или необязательной метки default должен присутствовать, даже если данная метка последняя в операторе switch.

Прохождение сквозь метки case недопустимы

switch (a)

{

case 5:

++a;

case 6: // ошибка компиляции (нельзя "забыть" выйти из case)

--a;

break;

}

 

Проходить сквозь case можно, если он не содержит операторов:

switch (a)

{

case 5:

case 6: // ошибок нет

--a;

break;

}

 

Выход из метки case можно осуществить при помощи оператора goto

switch (a)

{

case 5:

++a;

goto default; // переход на другую метку

case 6:

--a;

break; // выход из switch

default:

b = 0;

goto case 6; // переход на другую метку

}

Выражение, передаваемое оператору switch (switch(a)), может быть целого (не float, не double, не decimal) или строкового типа

switch (a)

{

case "Hello":

Console.WriteLine(a + ", World!!!");

break;

}

 

Циклы

Цикл с предусловием:

while (условие)

{

...

}

Цикл с постусловием:

do

{

...

}while (условие);

Параметрический цикл:

for (инициализация; условие; приращение)

{

...

}

 

Во всех циклах, как и в операторе if, условие должно иметь тип bool.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: