2. 7
Опрацювання величин
логічного типу
Розділ 2
§ 11
Ви дізнаєтесь:
●як порівнюють значення величин у програмах;
●які операції виконують над логічними
величинами;
●як описати алгоритмічну структуру неповного
розгалуження мовою програмування Python;
●як описати алгоритмічну структуру повного
розгалуження мовою програмування Python.
8. 7
Завдання. Визначте, які з наведених речень є істинними
висловлюваннями, хибними висловлюваннями і які не є
висловлюваннями:
1) Україна розміщена в Європі
2) Сума кутів трикутника дорівнює 200 градусів
3) Тарас Шевченко – великий український поет
4) Котра година?
5) Сонце обертається навколо Землі
6) Дніпро ділить Україну на Лівобережну та
Правобережну
7) 27 — просте число
8) Закрийте вікно!
9) 24 серпня – День Незалежності України
Не є висловлюванням
Не є висловлюванням
9. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Результатом виконання операції порівняння значень
двох величин є величина логічного типу, яка може
набувати одного із двох значень:
True False
або
Для опису логічних величин у мові програмування
Python використовують службове слово bool.
10. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Ми вже розглядали програми, які реалізують лінійні
алгоритми. Для опису умови в алгоритмах із
розгалуженням використовують логічні вирази з
використанням операцій порівняння.
Операція
Операція мовою
Python
Приклад
А=10
Результат
Більше > А>100 False
Менше < А<100 True
Не більше <= А<=10 True
Не менше >= А>=10 True
Дорівнює == А==100 False
Не дорівнює != А!=100 True
11. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Логічний тип отримав свою назву
на честь англійського математика та
логіка середини XIX століття,
одного із засновників математичної
логіки Джорджа Буля.
Будинок
Джорджа
Буля у
Лінкольні
12. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Порівняння значень величин різних типів має
особливості. Числові величини порівнюються за
правилами математики. Порівняння текстових величин
мовою Python, у результаті якого отримано логічне
значення True, продемонстровано нижче:
'алгоритм’ > ' алго ‘ — довжина першої величини
більша за довжину другої
'алгоритм' != 'alhoritm'
'алг' = = 'алг'
13. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Для логічних величин:
а = True b = False
Результатом виконання операції:
а > b
Оскільки:
Буде значення True
Істинне значення True
інтерпретується як 1
Хибне False — 0
Зрозуміло, що
1 > 0
14. 7
Як порівнюють значення
величин у програмах?
Розділ 2
§ 11
Для того щоб перевірити, чи входить деякий
фрагмент текстової величини в іншу текстову величину,
використовують оператор входження in.
Наприклад, результатом перевірки умови:
'у' in 'Python' є True
15. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Окрім операцій порівняння над логічними
величинами в усіх мовах програмування для запису
складених висловлювань використовують логічні
операції:
заперечення;
not (не)
кон'юнкція; лог. множення
and (і)
диз'юнкція (нестрога);
or (або)
диз'юнкція (строга).
xоr (виключне або)
16. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Результати виконання цих операцій над змінними А і В
логічного типу, які набувають значень True (1) і
False (0) наведені в таблиці істинності.
A B Not A A and B A or B A xor B
1 1 0 1 1 0
1 0 0 0 1 1
0 1 1 0 1 1
0 0 1 0 0 0
17. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
З таблиці істинності видно, що
за допомогою логічної операції
not змінюють значення логічної
величини на протилежне.
Результат операції and
збігається з результатом
множення значень 1 і 0 — є
істинним лише за умови, що
обидві величини А і В набувають
значення True — істина.
18. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Результат операції or буде
хибним лише за умови, що
величини А і Б набувають
значення False, та істинним в усіх
інших випадках. Наприклад, якщо
А = 5, а В = 7, то значенням
логічного виразу (А < В) and (В
== 7) є True, оскільки логічні
вирази 5 < 7 та В = 7 набувають
значення True, а тому, за
таблицею істинності, результатом
операції and є значення True.
19. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Щоб визначити значення складеного логічного
виразу, який містить кілька логічних операцій,
використовують таблицю істинності та враховують
пріоритет виконання операцій: у першу чергу
виконується операція:
not and or
Як і для числових виразів, для зміни порядку
виконання логічних операцій використовують дужки.
20. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
У мові програмування Python передбачено, що логічні
значення True та False можна перетворювати на
значення інших типів.
Наприклад, при
перетворенні їх у
рядкові величини
отримаємо слова True та
False відповідно.
21. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Для перетворення логічних значень у значення
числових типів використовують функції перетворення
int, float. У цьому разі, як для цілих, так і для дійсних
чисел:
True відповідає False відповідає
int(True) == 1 float(False) == 0.0
int(False) == 0 str(True) == 'True'
float(True) == 1.0 str(False) ==’False'
1 0
22. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
У зворотному порядку перетворення працює трохи
інакше, але запам’ятати дуже просто:
будь-які «непорожні»
значення
конвертуються в
будь-які «нульові»
значення
конвертуються в
True False
23. 7
Які операції виконують над
логічними величинами?
Розділ 2
§ 11
Для примусового приведення значення до логічного
типу використовується вбудована функція bool.
Наприклад:
bool(None) == False
bool(1) == True
bool (-1.1) == True
24. 7
Обговорюємо
Розділ 2
§ 11
1. У чому особливість опису порівняння величин різних
типів мовою програмування Python?
2. Як визначити значення логічного виразу, що містить
логічні операції and, or і not? Як для пошуку відповіді
на це запитання можна використати таблиці
істинності?
3. Що спільного й відмінного мають логічні
операції and і оr?
4. Які засоби для перетворення логічних даних
в інші типи передбачено в мові
програмування Python?