ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 3) онлайн

Ветвления

Управление циклом всегда сводится к одному вопросу: продолжать выполнение цикла или нет? Разумеется, люди в реальной жизни встречаются с гораздо более разнообразными вопросами. Нам нужно решать не только, пойти ли на работу сегодня или нет (продолжить ли цикл), но и делать более сложный выбор, на- пример, купить ли нам красную футболку или зеленую (или вообще не покупать футболку) или взять ли нам отпуск и, в случае положительного ответа, провести его в горах или на море?

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

В C++ существует несколько типов ветвлений, наиболее важным из которых является if...else, осуществляющее выбор между двумя альтернативами. В опе- раторе ветвления if...else использование else не является обязательным. Для вы- бора одной из множества альтернатив используется оператор ветвления switch, действие которого определяется набором значений соответствующей перемен-

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

Оператор if является наиболее простым из операторов ветвлений. Следующая программа, IFDEMO, иллюстрирует применение оператора if.

// ifdemo.cpp

// применение оператора if #include <iostream> using namespace std;

int main() {

int x;

cout << "Введите число: "; cin >> x; if( x > 100 )

cout << "Это число больше, чем 100\n "; return 0;

}

За ключевым словом if следует условие ветвления, заключенное в круглые скобки. Синтаксис оператора if показан на рис. 3.7. Легко заметить, что синтак- сис if очень напоминает синтаксис while. Разница заключается лишь в том, что если проверяемое условие окажется истинным, то операторы, следующие за if, будут выполнены всего один раз; операторы, следующие за while, исполняются до тех пор, пока проверяемое условие не станет ложным. Функционирование оператора if показано на рис. 3.8.

Примером работы программы IFDEMO может служить следующий:

Введите число: 2000 Это число больше, чем 100

Если вводимое число окажется не превосходящим 100, то программа завер- шится, не напечатав вторую строку.

 

22