Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП_самостійне_опрацюв.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.22 Mб
Скачать

Тема 2.4. Управляючі структури Object Pascal.

Поєднання конструкцій. Застосування на прикладах.

З|із| логічними операторами ми вже знайомилися|ознайомлювалися| і вже достатньо|досить| багато працювали. Але|та| тут ми розглянемо|розглядуватимемо| повнішу|цілковиту| інформацію по логічних операціях. Точніше сказати, по одній – if|.

Як ви вже знаєте, вона виконує перевірку – "Якщо якась умова виконана|, то виконати наступну|слідуючу| за умовою дію. Якщо потрібно виконати декілька дій, то їх потрібно об'єднати за допомогою begin| . . . end|.

У загальному|спільному| вигляді|виді| логіка виглядає так:

If| Умова виконана then |Дія1;

Якщо потрібно виконати дві дії, то потрібно написати так:

If| Умова виконана then|

begin|

Дія1;

else

Дія2;

end|;

При перевірці декількох умов можна використовувати декілька способів. Перший з|із| них можна визначити таким чином:

If| Умова1 виконана then|

If| Умова2 виконана then |Дія1;

Якщо Умова1 вірна, то виконається наступна|слідуюча| за логікою дія, а це друга перевірка. Якщо друга перевірка (умова2) вірна, то виконається дія1. Якщо хоч би|хоча би| одна з умов не виконається, то ланцюжок уривається і дія не буде виконана.

Другий спосіб в більшості випадків зручніший і наочніший|наглядний|. Він може бути представлений|уявляти| наступним|слідуючим| кодом:

If| (Умова1 виконана) and| (Умова2 виконана) then| Дія1;

В даному прикладі об'єднано|з'єднаний| дві перевірки в одну. Якщо Умова1 і Умова2 вірні, то виконається дія.

А якщо вам потрібно виконати дію, якщо хоч би|хоча би| одна з умов вірна? Не обов'язково, щоб|аби| обидва відразу, а хоч би|хоча би| одне. В цьому випадку можна для об'єднання використовувати не and|, а or|. Це виглядатиме так:

If| (Умова1 виконана) or| (Умова виконане) then| Дія1;

Якщо ви об'єднуєте дві умови в одного оператора if|, то їх обов'язково потрібно захистити|обгороджувати| дужками. Якщо ви, їх не поставите, то виникне помилка.

Ось|от| приклад|зразок| неправильного оформлення:

If| Умова1 виконана or| Умова2 виконана then| Дія1;

В цьому випадку буде не об'єднання двох перевірок, а бінарна операція (бінарні операції вимагають окремої розмови), для якої неправильно записаний рядок. Тому і виникає помилка.

Існує одне виключення|виняток|, при якому оператор може бути відсутнім. Якщо ви перевіряєте булеву| змінну, то оператора можна опустити. Приклад|зразок| такого випадку показаний в лістингу.

b:Boolean|;

begin|

b:=true|;

if| b then|

Виконати дію;

end|;

В даному прикладі відбувається|походить| перевірка булевої змінної b. Але|та| з|із| чим її порівнюють, не вказано. Як ви знаєте, булеві змінні можуть приймати одне з двох значень: true| або false| (істина або брехня). Так от, в цьому випадку відбувається|походить| перевірка на істину. Якщо булева змінна рівна true|, то дія буде виконана. Якщо ь рівна false|, то дія не буде виконана.

До цих пір ми розглядали|розглядували| скорочений вид логіки if|. У повному|цілковитому| вигляді|виді| вона виглядає так:

If| Умова виконана then| Дія1

Else| Дія2

У цьому вигляді|виді|, якщо умова виконана, то виконається дія1, інакше виконається Дія2.

Ви повинні вже знати, що кожен оператор повинен закінчуватися крапкою з комою. Запам'ятаєте, що після|потім| будь-якого оператора перед else| крапка з комою не ставиться. Це як виняток, яке треба пам'ятати.

Давайте розглянемо|розглядуватимемо| пару прикладів|зразків|. У лістингу зібрано|повизбирувати| декілька операторів порівняння.

var|

i: integer|;

begin|

if| i>0| then|

i:=i+10|

else|

i:=i+20|

if| i<0| then|

begin|

end|

else|

begin|

i:=20|;

end|;

end|;

Ось|от| тепер розказано все необхідне про логічні операції і як з|із| ними працювати.

При використанні логічних операцій результат порівняння завжди має бути логічним.

Не можна написати так – if| i:=0| then|. Тут в операторові використовується привласнення, а у нього немає результату, а значить, відбудеться помилка. Щоб|аби| не робити|чинити| таких помилок, просто запам'ятаєте, що при використанні оператора if |обов'язково повинні застосовуватися тільки|лише| логічні операції рівності, більше, менше і так далі

Єдиний випадок, коли можна опускати операторів порівняння, – це коли перевіряється логічна змінна. Наприклад:

var|

perem:Boolean|;

begin|

perem:=true|;

if| perem| then|

perem:=false|;

end|;

В даному прикладі немає ніяких|жодних| операторів типу|типа| рівності, більше або менше, тому що|бо| змінна param| – логічна і перевіряється вона. Якщо вона рівна true|, то наступна|така| дія виконається якщо немає, то пропуститься.

Питання для самоконтролю:

  1. Що називається умовою?

  2. Які значення вона може приймати?

  3. За допомогою яких команд реалізується вибір?

  4. Як записується інструкція if?

  5. Яким чином виконується команда if?

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]