Задание 2. Информатика. ЕГЭ. Поляков-1621

Просмотры: 36
Изменено: 30 октября 2024

Логическая функция F задаётся выражением $$ (\neg x \lor z) \land (\neg x \lor \neg y \lor \neg z). $$ На рисунке приведён фрагмент таблицы истинности функции \(F\), содержащий все наборы аргументов, при которых функция \(F\) ложна.

???F
0100
1100
1110

Определите, какому столбцу таблицы истинности функции \(F\) соответствует каждая из переменных \(x\), \(y\), \(z\).

Решение:

\(\neg x = 0 \Rightarrow x = 1\), \(x\) — 2-й столбец. \(\neg x \lor z = 0 \Rightarrow z = 0\), \(z\) — 3-й столбец.

Python


from itertools import permutations

def F(x, y, z):
    return ((not x) or z) and ((not x) or (not y) or (not z))

table = [[0, 1, 0, 0],
         [1, 1, 0, 0],
         [1, 1, 1, 0]]

for p in permutations('xyz'):
    if all(F(**dict(zip(p, row))) == row[-1] for row in table):
        print(*p)

Ответ: \(yxz\)