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

Просмотры: 38
Изменено: 24 ноября 2024

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

????F
01101
10101
10111
11101

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

Решение:

Python


from itertools import permutations

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


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

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

Ответ: \(yzxw\)