4.7. Условное выражение. C++ для начинающих

Инструкция if

Условный оператор if (в переводе с англ. — «если») реализует выполнение определённых команд при условии, что некоторое логическое выражение (условие) принимает значение «истина» true.

Синтаксис:

Условие в этой конструкции может быть любым выражением. JavaScript автоматически преобразует результат выра­жения в логическое значение, вызывая для него функцию Boolean(). Если условие эквивалентно true, выполняется инструкция, в противном случае – нет.

Выполняемая инструкций может быть представлена одной строкой или блоком кода (группой строк в фигурных скобках), например:

Выполнить код »

Примечание: Рекомендуется всегда использовать фигурные скобки, даже если нужно вы­полнить всего одну строку кода. Это ясно показывает, что должно быть выполнено в каждом случае и улучшает читаемость кода.

Видео

Логические операции в условных операторах

Условный оператор может проверять

  • одновременное выполнение всех условий (операция И — &&)
  • выполнение хотя бы одного из условий (операция ИЛИ — ||)
  • выполнение только одного из условий (операция исключающее ИЛИ — ^)

Пример на Си: Найти максимум из 3 чисел

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21#define  _CRT_SECURE_NO_WARNINGS #include  <stdio.h> int  main() {   int  a, b, c;   printf("a=" );   scanf("%d" , &a);   printf("b=" );   scanf("%d" , &b);   printf("c=" );   scanf("%d" , &c);   if  ((a >= b) && (a >= c))     printf("Max = %d" , a);   else  if  ((b >= a) && (b >= c))     printf("Max = %d" , b);   else     printf("Max = %d" , c);   getchar();   getchar();   return  0; }

Пример на С++: Найти максимум из 3 чисел

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21#include  <iostream> using  namespace  std; int  main() {   int  a, b, c;   cout <<  "a=" ;   cin >>  a;   cout <<  "b=" ;   cin >>  b;   cout <<  "c=" ;   cin >>  c;   if  ((a >= b) && (a >= c))     cout <<  "Max = "  <<  a;   else  if  ((b >= a) && (b >= c))     cout <<  "Max = "  <<  b;   else     cout <<  "Max = "  <<  c;   cin.get();    cin.get();   return  0; }

Логические операторы

Из логических переменных и выражений можно строить более сложные (составные) логические выражения с помощью логических операторов: not (отрицание, логическое НЕ), or (логическое ИЛИ) и and (логическое И).

Выражение not A (где A – логическая переменная или выражение) истинно тогда, когда выражение A ложно, и ложно, когда A истинно.

Выражение A and B истинно, когда одновременно истинны выражения A и B. Если хотя бы одно из этих выражения (A или B) ложно, то A and B ложно.

Выражение A or B истинно, когда любое из выражений A или B истинно и ложно, когда оба исходных выражения ложны.

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

A not A
true false
false true
A B A and B
true true true
true false false
false true false
flase false false
A B A or B
true true true
true false true
false true true
flase false false

Оператор ветвления switch (оператор множественного выбора)

Оператор if позволяет осуществить выбор только между двумя вариантами. Для того, чтобы производить выбор одного из нескольких вариантов необходимо использовать вложенный оператор if. С этой же целью можно использовать оператор ветвления switch. Общая форма записи

                       switch  (ЦелоеВыражение) {   case  Константа1: БлокОпераций1;     break ;   case  Константа2: БлокОпераций2;     break ;   . . .   case  Константаn: БлокОперацийn;     break ;   default: БлокОперацийПоУмолчанию;     break ; }

Оператор ветвления switch выполняется следующим образом:

  • вычисляется ЦелоеВыражение в скобках оператора switch;
  • полученное значение сравнивается с метками (Константами) в опциях case, сравнение производится до тех пор, пока не будет найдена метка, соответствующая вычисленному значению целочисленного выражения;
  • выполняется БлокОпераций соответствующей метки case;
  • если соответствующая метка не найдена, то выполнится БлокОперацийПоУмолчанию, описанный в опции default.

Альтернатива default может отсутствовать, тогда не будет произведено никаких действий. Опция break; осуществляет выход из оператора switch и переход к следующему за ним оператору. При отсутствии опции break будут выполняться все операторы, начиная с помеченного данной меткой и кончая оператором в опции default. Константы в опциях case должны быть целого типа (могут быть символами). Пример: Вывести день недели по его номеру

Язык Си

Теги

Adblock
detector