Логическая функция F задаётся выражением
Дан частично заполненный фрагмент, содержащий неповторяющиеся строки таблицы истинности функции F.
??? | ??? | ??? | ??? | F |
1 | 1 | 1 | ||
0 | 1 | 0 | 1 | |
1 | 1 | 0 | 1 | |
Определите, какому столбцу таблицы соответствует каждая из переменных x,y,w,z. В ответе напишите буквы x,y,w,z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
for x in range(2):
for y in range(2):
for w in range(2):
for z in range(2):
if ((not(w)) and (not(z == y)) and (x or y)) == True:
print(x, y, z, w)
Выводим таблицу с помощью данного кода. Порядок букв указан внутри функции print. Далее сравниваем таблицы. Последний столбик единственный, где может получиться 3 нуля, поэтому ставим в пустую клетку 0 и обозначаем столбик буквой w. Первый столбик единственный, где может получиться два нуля, поэтому ставим 0 в пустую клетку и обозначаем столбик буквой z.
В остальных столбиках тоже ставим нули, т.к. столбика чисто из единиц у нас быть не должно. Как различить оставшиеся два столбика? Обратим внимание на строку с единственной единицей. Одна из оставшихся букв содержит в себе эту единицу, другая — нет. Поэтому второй столбик это y, а третий это x.