Задание 2. Информатика. ЕГЭ. Поляков-64
- Просмотры: 55
- Изменено: 29 октября 2024
Логическая функция \(F\) задаётся выражением $$ (\neg x \land y \land z) \lor (\neg x \land \neg y \land z) \lor (\neg x \land \neg y \land \neg z). $$ На рисунке приведён фрагмент таблицы истинности функции \(F\), содержащий все наборы аргументов, при которых функция \(F\) истинна. Определите, какому столбцу таблицы истинности функции \(F\) соответствует каждая из переменных \(x\), \(y\), \(z\).
? | ? | ? | F |
0 | 0 | 0 | 1 |
1 | 0 | 0 | 1 |
1 | 0 | 1 | 1 |
В ответе напишите буквы \(x\), \(y\), \(z\) в том порядке, в котором идут соответствующие им столбцы (без разделителей).
Решение:
Python
from itertools import permutations, product
def F(x, y, z):
return ((not x) and y and z) or ((not x) and (not y) and z) or ((not x) and (not y) and (not z))
table = [[0, 0, 0],
[1, 0, 0],
[1, 0, 1]]
for p in permutations('xyz'):
if all(F(**dict(zip(p, row))) == (list(row) in table) for row in product([0, 1], repeat=3)):
print(*p)
Ответ: \(zxy\)