G-X3X01SGQDG

§ 26.
Логічні
вирази


Чим відрізняються такі два твердження: «2 + 3 = 5» і «2 + 2 = 5»? Ви зразу ж скажете: перше з них — істинне, а друге — хибне. Величини, які можуть набувати тільки двох значень — істина (так) або хибність (ні) — називають логічними величинами.

Завдання 1

Логічний тип даних

Окрім числових і рядкового типів даних, у мові Python є логічний тип bool. Змінна типу bool може набувати одного з двох значень — True (істина) або False (хибність).
Якщо змінній надати значення True, це буде змінна типу bool:
>>> a = True
>>> print(a)
True

Цікава інформація

Інша назва логічного типу даних — булів або булівський на честь англійського математика Джорджа Буля, засновника математичної логіки — розділу математики, що побудований на застосуванні математичних методів для розв’язування логічних задач. Сьогодні ідеї Буля використовуються у всіх сучасних цифрових пристроях.

Біля витоків української школи програмування стояла Катерина Ющенко, докторка фізико-математичних наук, авторка однієї з перших у світі мов програмування високого рівня, в якій застосовуються операції над адресами об’єктів у пам’яті комп’ютера.


Логічними є вирази, значенням яких є True або False.

Приклади 1–2

1.         Проаналізуємо результати обчислення логічних виразів у вікні консолі:

>>> books = 10
>>> books == 5         # Перевірка, чи дорівнює books 5
False
>>> books<10           # Перевірка, чи є books меншим за 10
False
>>> books >= 5         # Перевірка, чи books більше або дорівнює 5
True
>>> books != 10        # Перевірка, чи не дорівнює books 10
False



2.         Обчислимо значення логічних виразів:

x = 5
y = 2
a = x <= y                     # a = False
b = x–4.5<y*2           # b = True

Завдання 2

Пріоритет операцій:

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

Логічні операції

Бувають ситуації, коли одночасно необхідно перевірити виконання кількох умов. В такому разі до простих умов застосовують логічні операції.
Складена умова — це кілька простих умов, з’єднаних логічними операціями and (логічне І), or (логічне АБО), not (логічне заперечення — НЕ).
Нехай A і B — два логічні значення. Складена умова A and B істинна, тільки якщо й A, і B істинні. Складена умова A or B хибна, якщо й A, і B хибні.

Приклад 3

Розглянемо приклади складених умов:
not а <= 3 — рівнозначне виразу а > 3;
age >= 10 and age <= 18 — істинне, якщо значення age належить проміжку
   від 10 до 18 включно;
age < 10 or age > 18 — істинне для всіх значень age, які не належать проміжку
   від 10 до 18.

Приклад 4

Перегляньте відеоролик «Аналіз результатів обчислень логічних виразів у вікні консолі».

Приклад 5

Визначимо, чи належить точка з координатою x відрізку [4; 15].

Точка належить відрізку, якщо справджується нерівність [latex]4\le x\le15[/latex]. У програмуванні таку подвійну нерівність записують як складену умову:
х >= 4 and х <= 15

Завдання 3

Питання для самоперевірки 

1. Яких значень може набувати змінна логічного типу?
2. Назвіть операції над величинами логічного типу.
3. Запишіть мовою програмування прості умови:
     а) x більше 10;
     б) x не більше y;
     в) x — парне число.
4. Запишіть мовою програмування складені умови:
     а) 2< x < 10;
     б) x не належить проміжку (2, 10).
5. Обчисліть значення логічних виразів:
     а) (A <= B) and (A == B–1), якщо А = 2, В = 4;
     б) (A <= B) or (A == B–1), якщо А = 2, В = 4.

Вправа 26

Написати програму, у якій у залежності від значень змінних А та В обчислюються значення логічних виразів, а результат обчислення виводиться у вікно консолі.

2. Запустить Python IDLE і створіть файл Вправа 26.

3. Запишіть програмний код.

4. Додайте до програмного коду оператори, що виводять у консоль значення логічних виразів x or y, not x and y; not(x and y). Виконайте програму кілька разів, проаналізуйте значення логічних виразів при різних значеннях змінних а і b.
На малюнку наведено можливий результат виконання програми. 

Комп’ютерне тестування