Сьогодні | Разом | |
Відвідувань | 282 | 5264116 |
Авторізацій | 56 | 421554 |
Користувачів | 29 | 2709 |
5. Розгалуження
7. Розгалуження в Pascal
if <умова> then <Дія 1> else <Дія 2>Оператор розгалуження можна використовувати і у скороченій формі:
if <умова> then <Дія 1>У цьому випадку, якщо умова виконується (результат логічного виразу true), то виконується додаткова "Дія 1", яка не виконувалася б у разі помилкового значення логічного виразу.
8. Простий приклад
var x, y: Real; begin readln(x); if x < 0 then writeln('Обчислити неможливо') else begin y := sqrt(x); writeln(y:0:3) end end.
9. Вкладені оператори розгалуження
if <умова 1> then <Дія 1.1> else if <умова 2> then <Дія 2.1> else <Дія 2.2>
10. Увага!
if <умова 1> then if <умова 2> then <Дія 2.1> else <Дія 2>На перший погляд, гілка else відноситься до зовнішнього оператора розгалуження і повинна виконатися у разі помилкового значення "умови 1". Але це не так: дотримуючись правила "else завжди відноситься до найближчого вище if", виконання "Дія 2" можливе лише при помилковому значенні "умова" 2". Щоб уникнути таких неоднозначних інтерпретацій, слід розставляти операторні дужки.
if <умова 1> then begin if <умова 2> then <Дія 2.1> end else <Дія 2>
182. Розгалуження C/C++
if (<умова>) <Дія 1>; else <Дія 2>;Оператор розгалуження можна використовувати і у скороченій формі:
if (<умова>) <Дія 1>;У цьому випадку, якщо умова виконується (результат логічного виразу true), то виконується додаткова "Дія 1", яка не виконувалася б у разі помилкового значення логічного виразу.
183. Простий приклад
#include#include < math.h > int main() { double x; scanf("%lf", &x); if (x < 0) printf('Обчислити неможливо'); else { double y = sqrt (x); printf("%.3lf", y); } }
184. Вкладені оператори розгалуження
if (<умова 1>) <Дія 1.1>; else if (<умова 2>) <Дія 2.1>; else <Дія 2.2>;Увага!
if (<умова 1>) if (<умова 2>) <Дія 2.1>; else <Дія 2>;На перший погляд, гілка else відноситься до зовнішнього оператора розгалуження і повинна виконатися у разі помилкового значення "умови 1". Але це не так: дотримуючись правила "else завжди відноситься до найближчого вище if", виконання "Дія 2" можливе лише при помилковому значенні "умова" 2". Щоб уникнути таких неоднозначних інтерпретацій, слід розставляти операторні дужки.
if (<умова 1>) { if (<умова 2>) <Дія 2.1>; } else <Дія 2>;