Найти в Дзене

2 задание ЕГЭ. Информатика. Построение таблиц истинности логических выражений. Решение на языке Питон.

Оглавление

Логическая функция F задаётся выражением (xy) ∧ (¬x → ¬z) ∨ w.

Ниже приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.

Впишите эти переменные в соответствующие ячейки таблицы.

Вспомним обозначение в алгебре логики.

→ импликация. Ложна только тогда, когда из 1 (истины) следует 0 (ложь).

∧ конъюнкция (логическое умножение, и). Истинно только тогда, когда 1 умножаем на 1.

¬ инверсия (логическое отрицание). Делает из лжи истину и наоборот.

∨ дизъюнкция (логическое сложение, или). Ложно только если 0 + 0.

Импликацию можно заменить по закону Алгебры логики.

А → В = ¬А ∨ В

Отрицание целой скобки (выражения):

¬(А ∨ В) = ¬А ∧ ¬В (знак меняется на противоположный)

¬(А ∧ В) = ¬А ∨ ¬В (знак меняется на противоположный)

Запишем наше выражение с учётом законов.

Было (xy) ∧ (¬x → ¬z) ∨ w.

Стало xy) ∧ (x ∨ ¬z) ∨ w.

Запишем наше выражение на языке Питон.

xy) ∧ (x ∨ ¬z) ∨ w

(not x or y) and (x or not z) or w

Так как в столбце F у нас везде 0 (ложь), то добавляем not перед всем выражением:

not((not x or y) and (x or not z) or w)

-2
-3

Осталось сравнить таблицу из условий по количеству нулей и единиц в столбцах с тем, что выдал Питон. Но чисто визуально уже всё видно.

Ответ: YXWZ.
Ответ: YXWZ.

Код для копирования (не забываем про отступы, их Дзен съедает):

print ('x y z w')

for x in range (0, 2):

for y in range (0, 2):

for z in range (0, 2):

for w in range (0, 2):

if not((not x or y) and (x or not z) or w):

print (x, y, z, w)

#шаблонегэинформатика

#егэинформатика

#питон