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