Хелпикс

Главная

Контакты

Случайная статья





ПРАКТИЧЕСКАЯ РАБОТА №10. ТЕОРЕТИЧЕСКАЯ ЧАСТЬ



ПРАКТИЧЕСКАЯ РАБОТА №10

Тема: Составление программ разветвляющейся структуры

Цель: Освоить способы программирования ветвящегося алгоритма в среде Visual Studio.

Оборудование и программное обеспечение:

1. Персональный компьютер IBM PC/AT.

2. Операционная система Windows XP.

3. Среда программирования Visual Studio.

 

ТЕОРЕТИЧЕСКАЯ ЧАСТЬ

 

Оператор ifимеет следующий вид:

if (логическое_выражение)   оператор_1; [ else оператор_2; ]

Здесь оператор может состоять из одного или нескольких операторов или отсутство­вать вовсе (пустой оператор). Раздел else является необязательным.

Если выражение истинно (т.е. не равно нулю), выполняется оператор или блок, указанный в разделе if, в противном случае выполняется оператор или блок, преду­смотренный в разделе else. Операторы, указанные в разделах if или else, являются взаимоисключающими.

Например:

if (i == 10) {

if (j < 20) -a = b;

if (k > 100) с = d;

else a = с; // этот оператор else связан с оператором if (k > 100)

}

else a = d; // этот оператор else связан с оператором if (i == 10)

Оператор "?" называется тернарным, поскольку имеет три операнда.

Вместо операторов if-else можно использовать тернарный оператор "?" (условная операция).Условная операция "?" имеет следующий вид.

   Выражение__1 ? Выражение_2: Выражение_3;

Операция "?" выполняется следующим образом. Сначала вычисляется Выражение1. Если оно является истинным, вычисляется Выражение2, и его значение становится значением всего тернарного оператора. Если Выражение1 является ложным, вычисляется Выражение3, и результатом выполнения тернарного оператора считается именно его значение.

Например:

double yv2; // результат может быть только вещественным в данном примере

int xv;

xv = 10;

yv2 = (xv > 9) ? 100 : 2.0;

Console.WriteLine("так как "+ xv + " > 9, то результат = " + yv2);

xv = 1;

yv2 = (xv > 9) ? 100 : 2.0;

Console.WriteLine("так как " + xv + " < 9, то результат = " + yv2);

Результат оператора "?" может игнорироваться и не присваиваться ни одной переменной, например:

double yv1 = 100;

double yv2 = 2.0;

int xv = 10;

(xv > 9) ? Console.WriteLine("так как "+ xv + " > 9, то результат = " + yv1) : Console.WriteLine("так как " + xv + " < 9, то результат = " + yv2);

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.