Інформація про новину
  • Переглядів: 4136
  • Дата: 19-10-2021, 19:53
19-10-2021, 19:53

6.7. Логічні вирази в Lazarus. Змінні логічного типу. Логічні операції

Категорія: Інформатика





Попередня сторінка:  6.6. Налагодження проекту в Lazarus
Наступна сторінка:   6.8. Розгалуження в Lazarus

1. Що таке висловлювання? Яке висловлювання вважається істинним, а яке - хибним?

2. Які властивості змінної ви знаєте?

3. Що визначає тип змінної? Які типи числових змінних ви знаєте?

Логічні вирази

Ви вже знаєте, що висловлювання - це речення, яке містить твердження про певний об’єкт або про зв’язки між об’єктами і про яке можна однозначно сказати, істинне воно чи хибне. Приклади істинних висловлювань: «Київ - столиця

України», 2*5-4 = 6, 4 < 12. Приклади хибних висловлювань: « У січні ЗО днів», 2 * 7 + 3 = 12, 3 > 5. Приклади речень, які не є висловлюваннями: «Закрий, будь ласка, вікно», «Тобі сподобався цей фільм?».

Висловлювання можна розглядати як логічний вираз.

Логічним виразом називається вираз, який може набувати одне з двох значень: true (англ. true - істина, істинність, правда) або false (англ. false - хиба, хибність, неправда).

Якщо висловлювання істинне, то вважають, що значення відповідного логічного виразу дорівнює true. Тобто «Київ -столиця України» = true, (2 * 5 - 4 = 6) = true, (4 < 12) = true.

Якщо висловлювання хибне, то вважають, що значення відповідного логічного виразу дорівнює false. Тобто «Цей підручник для учнів сьомого класу» = false, (2*7 + 3 = 12) = false, (3 > 5) = false.

Звертаємо вашу увагу, що логічні вирази використовують у розгалуженнях і циклах. Розглянемо таке використання в наступних пунктах.

Змінні логічного типу

У попередніх пунктах ми використовували змінні, значеннями яких є числа. Нагадаємо, що ми використовували змінні типу real float), значеннями яких

можуть бути будь-які числа (цілі та дробові), а також змінні типу integer int),

значеннями яких можуть бути тільки цілі числа.

В інформатиці використовують також змінні, значеннями яких можуть бути true або false.

Змінні, які можуть набувати одного з двох значень true або false, називаються змінними логічного типу.

Логічний тип змінних позначається boolean bool).

Звертаємо вашу увагу, що змінні логічного типу є одним з видів логічних виразів. Надавати змінним логічного типу відповідні значення можна командами присвоювання. Наприклад:

Змінній логічного типу можна присвоювати значення іншої логічної змінної, наприклад х := у х = у).

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

Тоді змінна х матиме значення true, а змінна у - false.

Аля тих, хто вивчає Pascal

Змінні логічного типу також повинні бути описані в рядку var. Наприклад, var х, у: boolean.

Аля тих, хто вивчає Python

Для перевірки, чи є рівними значення двох виразів, у мові Python використовують знак ==.

Значення True та False потрібно писати з великої літери.

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

Розглянемо три логічні операції: заперечення, кон’юнкція (лат. conjunctio -об’єднання) і диз’юнкція (лат. disjunctio- роз’єднання).

Запереченням логічного виразу х називається логічна операція, результат якої дорівнює true, якщо значення логічного виразу х дорівнює false, і дорівнює false, якщо значення логічного виразу х дорівнює true.

Заперечення логічного виразу х позначають not х. Інколи заперечення логічного виразу х позначається х або 'х.

Тобто, якщо х = true, то not х = false, і якщо х = false, то not х = true. Можна скласти таку таблицю, яку називають таблицею істинності для операції заперечення:

Для заперечення висловлювання часто використовують частку не. Наприклад, результатом заперечення висловлювання А = «Існує найбільше просте число» є висловлювання not А = «Не існує найбільшого простого числа».

Кон’юнкцією двох логічних виразів х і у називається логічна операція, результатом якої є true, якщо значення кожного з логічних виразів х і у є true, і є false, якщо значення хоча б одного з логічних виразів х або у є false.

Кон’юнкція двох логічних виразів х і у позначається х and у (англ. and - і, та). Інколи кон’юнкція двох логічних виразів х і у позначається х л у.

Таблиця істинності для кон’юнкції виглядає так:

Для утворення кон’юнкції двох висловлювань часто використовують сполучник і. Наприклад, висловлювання «Число 36 кратне 3 і число 36 кратне 2» є кон’юнкцією двох висловлювань: «Число 36 кратне 3» і «Число 36 кратне 2».

Диз’юнкцією двох логічних виразів х і у називається логічна операція, результатом якої є true, якщо значення хоча б одного з логічних виразів х або у є true, і є false, якщо значення кожного з логічних виразів х і у є false.

Диз’юнкція двох логічних виразів х і у позначається х or у (англ. or-або). Інко

ли диз’юнкція двох логічних виразів х і у позначається х v у

Таблиця істинності для диз’юнкції виглядає так:

Для утворення диз’юнкції висловлювань часто використовують сполучник або. Наприклад, висловлювання 11 < 21 (11 менше або дорівнює 21) є диз’юнкцією двох висловлювань: (11 < 21) або (11 = 21).

Часто використовують логічні вирази, що містять кілька логічних операцій. Наприклад, х or у and not z.

У таких виразах для логічних операцій, які розглянули вище, визначено такий пріоритет виконання операцій: спочатку виконуються операції заперечення, потім - операції кон’юнкції, а за ними - операції диз’юнкції.

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

Для змінення порядку виконання логічних операцій використовують дужки. Так, наприклад, у логічному виразі (х or у) and notz спочатку буде виконано операцію диз’юнкції в дужках, потім операцію заперечення, а потім операцію кон’юнкції.

Цікаві факти з історії

Логіка як наука зародилася в Стародавній Греції. Засновником цієї науки вважається давньогрецький філософ Арістотель (384-322 до н. е.) (мал. 6.56).

Точні означення логічних операцій і формулювання їх властивостей були сформульовані англійським математиком і філософом Джорджем Будем (1815-1864) (мал. 6.57). У 1854 році вийшла його основна робота «Дослідження законів думки», на цих законах засновано математичні теорії логіки й імовірності. У ній досліджується система, яку сьогодні називають Алгеброю висловлювань, або Булевою алгеброю.

Булева алгебра стала фундаментальною науковою основою для створення комп’ютерів і використовується в усіх мовах програмування. Саме іменем цього вченого названо логічний тип даних у програмуванні.

Потрібно також відзначити значний внесок українських учених у розвиток логіки як науки: Яна Лукасевича (1878-1956), Павла Копніна (1922-1971), Клавдії Руденко (1919-1974), Ірини Хоменко (нар. 1961 р.) (мал. 6.58).

Найважливіше в цьому пункті

Висловлювання - це речення, яке містить твердження про певний об’єкт або про зв’язки між об’єктами та про яке можна однозначно сказати, істинне воно чи хибне

Логічним виразом називається вираз, який може набувати одне з двох значень: true або false.

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

Змінні, які можуть набувати одного з двох значень, true або false, називаються змінними логічного типу. Логічний тип змінних позначається boolean bool).

Змінні логічного типу також вважаються логічними виразами.

Над логічними виразами можна виконувати логічні операції: заперечення, кон’юнкцію, диз’юнкцію.

Запереченням логічного виразу х називається логічна операція, результат якої дорівнює true, якщо значення логічного виразу х дорівнює false, і дорівнює false, якщо значення логічного виразу х дорівнює true.

Кон’юнкцією двох логічних виразів х і у називається логічна операція, результатом якої є true, якщо значення кожного з логічних виразів х і у є true, і є false, якщо значення хоча б одного з логічних виразів х або у є false.

Диз’юнкцією двох логічних виразів х і у називається логічна операція, результатом якої є true, якщо значення хоча б одного з логічних виразів х або у є true, і є false, якщо значення кожного з логічних виразів х і у є false.

У логічних виразах для логічних операцій, розглянутих вище, визначено такий пріоритет виконання операцій: спочатку виконуються операції заперечення, потім - операції кон’юнкції, а далі - операції диз’юнкції. Для змінення цього порядку виконання логічних операцій використовують дужки.

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

Лайте вілповілі на запитання

1°. Що таке висловлювання? Наведіть приклади істинних висловлювань, хибних висловлювань, невисловлювань.

2°. Який вираз називається логічним? Наведіть приклади.

3°. Які змінні називаються змінними логічного типу?

4°. Як описуються змінні логічного типу?

5*. Що таке заперечення логічного виразу?

6*. Що таке кон’юнкція двох логічних виразів?

7*. Що таке диз’юнкція двох логічних виразів?

8°. Яким є пріоритет виконання логічних операцій?

9*. Що вивчає наука логіка?

Виконайте завлання

1 *. Наведіть приклади використання логічних виразів і логічних операцій у математиці, українській мові, інших предметах, у життєвих ситуаціях.

2*. Сформулюйте заперечення висловлювань і з’ясуйте, істинні вони чи хибні:

а) Число 3 є дільником числа 545.

б) Автомобіль не має права їхати на червоне світло.

в) Існують паралелограми з прямими кутами.

г) Рівняння 2х - 3 = 0 має цілий корінь.

д) Не існує натурального числа, що ділиться на 2.

е) Існує ціле число, яке ділиться на всі цілі числа.

З*. Серед нижченаведених висловлювань знайдіть кон’юнкції та диз’юнкції та визначте, істинні вони чи хибні:

а) Число 27 кратне 3 і кратне 9.

б) 17 < 42 < 18.

в) Число 2 просте або парне.

г) ААВС є гострокутним, прямокутним або тупокутним.

д) Діагоналі будь-якого паралелограма взаємно перпендикулярні та точкою перетину діляться навпіл.

4*. Нехай А = « Сераієнко вивчає англійську мову», В = « Сергієнко має оцінку 8 з інформатики». Сформулюйте висловлювання:

а) A and not В;

б) not A or В,

в) A or not A and В,

г) not A and not В and А

5*. Укажіть порядок виконання логічних операцій у таких логічних виразах:

а) a or not a and b,

б) not a or not b and a,

в) (a or not b) and (not a or not b)\ r) not a and not b or c and d.

6*. Складіть таблиці істинності логічних виразів зі змінними логічного типу а і b

а) a or a and b;

б) a or not a and b,

в) a or b or not b,

г) (a or not b) and (a or not b)\

д) not a or not b,

е) a and (not b or a) and b,

ж) a and (b or c) not a;

з) a or b and c or not b.

7*. Складіть таблиці істинності для таких висловлювань:

а) Даринка любить кататися на скейті або Петрик займається легкою атлетикою і Марійка навчається в музичній школі.

б) Сьогодні дощ або вітер, і потрібно одягнути плащ.

в) Катруся має оцінки 8 з інформатики і української мови або оцінку 9 з історії України.

8*. Визначте істинність або хибність висловлювань для наведених значень змінних:

а) х > 0 і у > 0 або х<0іу<0; б)х>0інеу<0 або х < 0 та у > 0.

Значення змінних:

1) х = 5, у = 8; 2) х = 5, у = -8:

3) х = -5, у = 8; 4) х = -5, у = -8.

9*. На виробництві є три установки. На кожній з них установлено датчики. Якщо одночасно будуть перевищені граничні показники датчиків на першій установці і на будь-якій іншій або на всіх трьох установках, то виникає надзвичайна ситуація. У такому разі повинен пролунати попереджувальний сигнал. Для створення автоматизованої системи подавання цього сигналу складіть логічний вираз і для нього таблицю істинності, на основі якої буде працювати ця система.

10*. Мишко може погратися на комп’ютері, якщо він виконав домашні завдання або навів порядок у своїй кімнаті і завершила свою роботу на комп’ютері його старша сестра. У системі «Розумного будинку» можна фіксувати виконання кожного виду роботи. Це робить можливим автоматично отримувати повідомлення про надання доступу до комп’ютера. Складіть логічний вираз і для нього таблицю істинності, на основі якої працює система надсилання повідомлень.

 

 

Це матеріал з підручника Інформатика 8 клас Ривкінд (2021)

 




Попередня сторінка:  6.6. Налагодження проекту в Lazarus
Наступна сторінка:   6.8. Розгалуження в Lazarus



^