Для организации вычислений в зависимости от какого-либо условия в C++ предусмотрен условный операторif, который в общем виде записывается следующим образом:
if (условие) оператор_1; else оператор_2;
Здесь условие - это логическое выражение, переменная или константа.
Работает условный оператор следующем образом. Сначала вычисляется значения выражения, записанного в виде условия. Если оно имеет значение истина (true), выполняется оператор_1. В противном случае (значение ложное (false)) оператор_2.
Например, чтобы сравнить значения переменных a и b нужно написать следующую часть программного кода:
1 2 3 4 5
int a, b; cin>>a; cin>>b; if (a==b) cout<<"a equal b"; else cout<<"a not equal b";
Если в задаче требуется, чтобы в зависимости от значения условия
выполнялся не один оператор, а несколько, их необходимо заключить в фигурные скобки, как составной оператор.
if (условие) { оператор_1; оператор_2; … }
else { оператор_1; оператор_2; … }
Оператор switch
Он необходим в тех случаях, когда в зависимости от значений переменной надо выполнить те или иные операторы:
switch (выражение) { case значение_1: операторы_1; break; case значение_2: операторы_2; break; case значение_3: операторы_3; break; … case значение_n: операторы_n; break; }
Оператор работает следующем образом. Вычисляется значение выражения. Затем выполняются операторы, помеченные значением, совпадающим со значением выражения. То есть если, выражение принимает значение_1, то выполняются операторы_1 и т.д..
Оператор break необходим для того, чтобы осуществить выход из операторы switch. Если он не указан, то будут выполняться следующие операторы из списка, несмотря на то, что значение, которым они помечены, не совпадает со значением выражения.