ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В 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, то программа завер- шится, не напечатав вторую строку.
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
