Лекція Тема: Створення розгалужених програм План Умови використання операторів розгалуження Використання умовного оператора Використання оператора вибору Умови використання операторів розгалуження Умовний оператор if…else вибирає один з двох варіантів послідовності обчислень та має наступний синтаксис: if (вираз_1 ) вираз_2 else вираз_3 Якщо вираз_1 не дорівнює 0, то виконується вираз_2, інакше (якщо вираз_1 дорівнює 0) виконується вираз_3. Конструкція if…else може містити оператори вводу-виводу значень, виконання математичних операцій або виклики власних функцій, а також і іншу інструкцію if. Якщо в програмі треба врахувати більш трьох можливих варіантів, доцільно використовувати оператор множинного вибору switch. Синтаксис цього оператора такий: switch (перемикаючий_вираз) { case константний_вираз_1: оператори_1;break; case константний_вираз_2: оператори_2;break; default: оператори_n+1;} Оператор switch передає керування тому оператору, константний вираз якого співпадає з значеннями перемикаючого виразу. Якщо значення змінної не задовольняє умовам жодної з гілок case, виконується гілка, що позначена міткою default. Якщо ви пропустили оператор break, комп'ютер виконає всі оператори, які містяться у відповідній гілці case та інших гілках, до першого зустрінутого в тексті break [1-8]. а) Введіть різні значення дійсного числа типу double та знайдіть значення функції у(х) при заданих значеннях х, використовуючи умовні оператори if …else. Виведіть результати на екран. Програма А2. #include #include #include #define pi 3.1415926 // асоціація pi з значенням 3.1415926 using namespace std; int main() { setlocale(0,""); double x = 0.0; //оголошення змінних з плаваючою точкою double y = 0.0; cout << "Ведите вещественное число x = "; cin >> x; if (x < (-(pi) / 4)) { y = x; // розрахунок функціі у cout << endl << "Значение x: x < -pi/4" << endl<<"Значение y="< } else if (x > (pi/4)) { y = -x; // розрахунок функціі у cout << endl << "Значение x: x > pi/4" << endl << "Значение y=" << y; } else { y = tan(x); // розрахунок функціі у cout << endl << "Значение x: -pi/4 <= x <= pi/4" << endl << "Значение y=" << y; } } Результати роботи програми. Рисунок 1 – Результат роботи програми А2 б) Написати програму, що визначає, яка з цифрових клавіш була натиснута (від 0 до 6), використовуючи оператор множинного вибору switch. В програмі передбачте вивід повідомлення при невірно введеному числу. Використання оператора вибору Програма А2. #include #include #include #include using namespace std; int main() { setlocale(0,""); int ch; //оголошення змінних cout << "Введите цифру:"; cin >>ch; //ввод switch (ch) { case 0: cout< case 1: cout < case 2: cout << ch<< "– два" ; break; case 3: cout << ch<<"– три"; break; case 4: cout << ch<< "– четыре"; break; case 5: cout << ch<< "– пять" ; break; case 6: cout << ch<< "– шесть" ; break; default: cout<<"\n НЕ ТА ЦИФРА!!!"; break; } return 0; } Результати роботи програми Б2. Рисунок 2 – Результат роботи програми Б2 Контрольні питання Протестуйте описані програми Складіть задачу, що може бути розв’язана за допомогою оператора умовного переходу Складіть задачу, що може бути розв’язана за допомогою оператора вибору |