Алгоритми розгалуження. Задача. Ввести два цілих числа і вивести на екран більше з них.Ідея розв’язання: потрібно вивести на екран перше число, якщо воно більше другого, або друге, якщо воно більше першого. Особливості: дії виконавця залежать від деяких умов (якщо … інакше …). Алгоритми, в яких послідовність кроків залежить від виконання деяких умов, називаються розгалуженими.
Умовний оператор if <вираз> { // декілька операторів (інструкцій) // ... } else { // декілька операторів (інструкцій) // ... }де вираз – умовний вираз (умова) згідно синтаксису мови C++. Оператор if працює наступним чином. Якщо елемент вираз дає значення true (істина), тоді виконуються оператори одразу після слова if. В іншому випадку (значення виразу рівне false) виконуються оператори, що слідують після слова else.
Варіант 1. Програма#include
Приклади використання скороченої форми оператора if. Задача. Дано три цілих числа a, b, c. Розробити програму, яка знаходить мінімальне значення між цими числами.int a, b, c; int min; // шукане мінімальне значенняa = 8;b = -5;c = 12; // пошук мінімального значенняmin = a;if (min > b) min = b;if (min > c) min = c; // min = -5
Складені умови. Задача. Фірма набирає співробітників від 25 до 40 років включно. Ввести вік людини і визначити, чи підходить вона фірмі (вивести відповідь “підходить” або “не підходить”). Особливості: потрібно перевірити, виконання двох умов одночасно. Чи можна розв’язати відомими методами??
Складена умова. Складена умова – це умова, яка складається з декількох простих умов (відношень), зв’язаних з допомогою логічних операцій:! – НІ (заперечення, інверсія)&& – І (логічне множення, кон'юнкція, одночасне виконання умов)|| – АБО (логічне додавання, диз'юнкція, виконання хоча б одної з умов)Прості умови (відношення) < <= > >= == !=дорівнюєне дорівнює
Істинне чи хибне при a =2; b = 3; c = 4;! (a > b)(a < b) && (b < c)not (a >= b) || (c = d)(a < c) || (b < c) && (b < a)(a < b) && (b > c)Для яких значень x істинні умови: (x < 6) &&(x < 10)(x < 6) && (x > 10)(x > 6) && (x < 10)(x > 6) && (x > 10)(x < 6) || (x < 10)(x < 6) || (x > 10)(x > 6) || (x < 10)(x > 6) || (x > 10)Складена умова. True. True. FALSE{44118 E64-71 D3-4182-A27 E-F7 B922 CC90 D6}(-∞, 6)∅(6, 10)(10, ∞)(-∞, 10)(-∞, 6) ∪ (10,∞)(-∞, ∞)(6, ∞)x < 6x > 10x < 10x > 6 True. True