Разветвляющийся вычислительный процесс может быть осуществлен с помощью структуры выбора, содержащей логическое условие и ветви true и false. Если условие выполняется, то осуществляется переход к верви true, в противном случае – к ветви false. В языке C++ структура выбора реализуется с помощью оператора условного перехода.
Его синтаксис:
if (B) S1;
else S2;
где B - логическое выражение;
S1, S2 – любые операторы языка;
if ( если), else (иначе) – служебные слова.
Если значение B – true, то выполняется оператор S1, если – false, то выполняется оператор S2. Затем в обоих случаях управление передается следующему оператору программы. Допускается и краткая форма условного оператора:
if (B) S1;
В этом случае, если значение B – false, управление сразу передается оператору, следующему за оператором if.
Условные операторы могут иметь вложенную конструкцию, когда после слова else используется также условный оператор. Если в какую- либо ветвь разветвления требуется вставить несколько операторов S1,S2,...Sn, то они объединяются в один составной оператор:
{ S1;S2; ... Sn;}
Для этого они заключаются в фигурные скобки. Элементами составного оператора могут быть любые операторы языка, в том числе условные и другие составные операторы. Заметим, что и сама программа строится на основе понятия составного оператора.