Задание 2. Информатика. ЕГЭ. Шастин. 9.2.2025

Просмотры: 351
Изменено: 9 февраля 2025

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

????F
000
1000
1010

В ответе напишите буквы \(x\), \(y\), \(z\), \(w\) в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу, затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не надо.

Решение:

Python


from itertools import product, permutations

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

for perm in permutations('xyzw'):
    for a, b, c, d in product([0, 1], repeat=4):
        table = [(a, b, 0, 0, 0),
                 (1, 0, c, 0, 0),
                 (1, 0, 1, d, 0)]
        if len(set(table)) < 3:
            continue
        if all(F(**dict(zip(perm, row))) == row[-1] for row in table):
            print(*perm)

Ответ: \(wzyx\)