Тема 12. Вказівки розгалуження

Розгалуження – це така форма організації дій, при якій в залежності від виконання чи невиконання деякої умови здійснюється або одна, або друга послідовність дій.

Умова– це будь-яке твердження або запитання такого типу, що допускає лише дві можливі відповіді: «так» або «ні». Перевірка умови повинна бути допустимою дією виконавця. Умову записують за допомогою логічного виразу. Логічні вирази бувають прості і складені.

Простий логічний вираз – це два арифметичних вирази, з’єднані знаками відношення.(<, >, =,<>, >=, <=). Наприклад, a>5, cos(x)<=0, a<>b.

Складений логічний вираз – це декілька простих логічних виразів, з’єднаних назвами логічних операцій: NOT, AND, OR.

Операція NOT А дає істинний результат, якщо логічний вираз А є хибний і навпаки.

Операція А AND В дає істинний результат, якщо обидва логічні вирази є істинні.

Операція А OR В дає істинний результат, якщо хоча б один з логічних виразів є істинним.

Приклад. Нехай x=3, y= -9. Обчислити значення логічних виразів.

Прості вирази Значення Складені вирази Значення
Х=3   Not Y<= -50  
X<Y   1<x and x<5  
7 mod 3=1   x>4 or y< -15  
Y2=4   x>4 or y> -15  

 

Якщо відповідь на умову є позитивною, то виконується серія команд «оператор1», якщо ж відповідь негативна, - серія команд «оператор2». Після виконання <серії команд> виконавець переходить до наступної після розгалуження команди.


+ -

 
 

 

 


Така алгоритмічна конструкція називається «Повне розгалуження». Їй відповідає повний умовний оператор:

If <умова> Then <оператор 1> Else <оператор 2>

 

Іf A<5 Then A=A+1 Еlse А=А*2

 

Якщо умова істинна (true), то виконуються послідовність операторів після слова Then, а якщо хибна (false), то керування передається на оператор, що слідує за Else.

Може статися, що у випадку невиконання умови не потрібно виконувати ніяких дій. Тоді використовується коротка форма розгалуження.

If <умова> Then <оператор 1>

+ –

 

If A<5 Then A=A+1

 

Якщо умова істинна (true), то виконуються послідовність операторів, а якщо хибна (false), то керування передається на оператор, що слідує за оператором End If

У випадку, коли необхідно використовувати декілька вказівок розгалуження, вкладених одна в одну, краще замінити їх оператором вибору.Оператор вибору Select Case дозволяє вибрати одну з декількох груп команд залежно від значення деякої змінної.

Синтаксис оператора: