Логическая функция задаётся выражением:
Ниже представлен фрагмент таблицы истинности функции , содержащий неповторяющиеся строки.
Определите, какому столбцу истинности функции соответствует каждая переменная
. В ответе укажите переменные в соответствующем порядке без пробелов.
Решение №:
print(’x y z’)
for x in range(2):
for y in range(2):
for z in range(2):
if not(x and (y <= z)) == 0:
print(x, y, z)
Результат работы программы:
Столбцы исходной таблицы соотвествуют столбцам соответственно.
Решение №:
1. Заметим, что функция принимает значение на всех имеющихся наборах
,
,
, а выражение задаётся отрицанием скобки, значит сама скобка должна давать единицу на всех наборах, чтобы её отрицание было
. Получается выражение в большой скобке должно давать единицу, значит икс всегда должен быть единицей, так как в этой скобке конъюнкция икса и скобки с импликацией, то есть он занимает третий столбик.
2. Остались первые два столбика и игрек с зет: импликация должна быть истинна, а она истинна на всех наборах, кроме набора
, т.е. не может быть такого, что
, а
, но если первый столбец это
, а второй это
, то именно таким набором и является третья строка, значит первый столбец это
, а второй это
.