ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 09.11.2023
Просмотров: 457
Скачиваний: 6
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Ещё пример задания:
Р-19. Логическая функция F задаётся выражением
((w y) x) ((w z) (y w)).
На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z, w.
? | ? | ? | ? | F |
1 | | | 1 | 0 |
| | | 1 | 0 |
1 | | 1 | | 0 |
В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Решение:
-
запишем выражение в более понятной форме: -
попробуем найти все сочетания переменных, при которых функция равна 0 (их должно быть не очень много) -
выберем для начальной подстановки переменную, которая чаще всего встречается в выражении и поэтому подстановка её значения даст наибольшую информацию; у нас это переменная w -
подставим сначала w = 0, а затем w = 1, и таким образом построим все строки таблицы истинности, где функция равна нулю -
при w = 0 получаем
поскольку при всех z, имеем
-
для того, чтобы сумма была равна 0, оба слагаемых должны быть равны 0, так что
-
таким образом, при w = 0 получаем y = 1, x = 0, а значение z может быть любое; это даёт две строки в таблице истинности:
x
y
z
w
F
0
1
0
0
0
0
1
1
0
0
-
теперь рассмотрим случай, когда w = 1: получаем
поскольку при всех y, имеем
-
для того, чтобы сумма была равна 0, оба слагаемых должны быть равны 0, так что
-
таким образом, при w = 1 получаем x = 0, z = 0, а значение y может быть любое; добавляем ещё две строки в таблицу истинности:
x
y
z
w
F
0
1
0
0
0
0
1
1
0
0
0
0
0
1
0
1
0
1
-
сравниваем эту таблицу с таблицей в задании:
1
2
3
4
F
1
1
0
1
0
1
1
0
-
две единицы могут быть только в столбцах y и w, поэтому это столбцы 1 и 4 -
кроме этих столбцов единственная единица может быть в столбце z, поэтому столбец 3 – это z -
при z = 1 должно быть y = 1, поэтому столбец 1 – это y, а столбец 4 – это w -
остаётся столбец 2 – это x -
Ответ: yxzw.
Решение (разбиение на два слагаемых, А.Н. Носкин):
-
запишем выражение в более понятной форме: -
Каждое из слагаемых скобок должна быть равна 0, поэтому составим для каждой таблицу истинности. -
Рассмотрим ((w z) (y w)), а именно первую скобку (w z), она равна 0 при ситуации 1 0, тогда y во второй скобке может быть любым
w | z | y |
1 | 0 | 0 |
1 | 0 | 1 |
Теперь рассмотрим вторую скобку (y w), она равна 0 при ситуации 1 0, тогда zво первой скобке может быть любым. Добавим эти значения в таблицу истинности, которая приведена выше.
w | z | y |
1 | 0 | 0 |
1 | 0 | 1 |
0 | 0 | 1 |
0 | 1 | 1 |
-
Теперь рассмотрим ((w y) x). Эта скобка будет равна 0 при ((w y) ≠ x). Составим таблицу истинности
w | y | x |
0 | 0 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
1 | 1 | 0 |
Анализ этой таблицы показывает, что набора 001 (выделено цветом) быть не может иначе система будет равна 1 по скобке ((w z) (y w)).
-
Сравним полученные таблицы истинности с исходной таблицей в задании:
1
2
3
4
F
1
1
0
1
0
1
1
0
-
x в таблице истинности во всех строках равен 0, тогда он соответствует второму столбцу, так как там нет ни одной единицы. Сразу заполним нулями.
1
x
3
4
F
1
0
1
0
0
1
0
1
0
1
0
-
w и y в таблице истинности имеют 2 и более единицы, а z всего 1, тогда z - это столбец 3. Заполним сразу 0.
1 | x | z | 4 | F |
1 | 0 | 0 | 1 | 0 |
| 0 | 0 | 1 | 0 |
1 | 0 | 1 | | 0 |
-
Так как строки не повторяются, то в первой ячейке второй строки может быть только 0. Заполним ее.
1 | x | z | 4 | F |
1 | 0 | 0 | 1 | 0 |
0 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | | 0 |
-
Теперь проанализируем последнюю ячейку третьей строки. Ее значения могут быть 0 и 1. Предположим, что там 0, а в первом столбце w, тогда выражение примет вид
((1 0) 0) ((1 1) (0 1)) – этого быть не может, так как выражение равно 1. Предположим, что там 1 и в первом столбце w, тогда выражение примет вид
((1 1) 0) ((1 1) (1 1)) – этого быть не может, так как выражение равно 1. Таким образом в первом столбце w не может быть ни при каком случае. Там только y, ну а w отправляется в 4-й столбец.
-
Ответ: yxzw.
Решение (построение таблицы с помощью программы, Б.С, Михлин)
print('x y z w') # заголовок таблицы
k = 0, 1 # k - кортеж констант (0 - False, 1 - True)
for x in k:
for y in k:
for z in k:
for w in k:
if not (((w or y) == x ) or (not w or z) and \
(not y or w) ) :
# можно так:
# if ( ( ( w or y ) == x ) or ( not w or z) \
# * (not y or w) ) == 0: # '*' вместо ‘and’
print( x, y, z, w ) # если F = 0
Ещё пример задания:
Р-18. Логическая функция F задаётся выражением (x y) (y z). На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какому столбцу таблицы истинности функции F соответствует каждая из переменных x, y, z.
? | ? | ? | F |
0 | 0 | | 0 |
0 | | | 0 |
В ответе напишите буквы x, y, z в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Решение:
-
запишем выражение в более понятной форме: -
для решения этой задачи используем свойство операции «импликация»: тогда и только тогда, когда a = 1 и b = 0 -
в обеих строках приведённой части таблицы функция равна 0, поэтому везде
-
хотя бы одна из величин, x или y равна 1, что даёт ; -
y и z различны, что даёт
-
поскольку значения в первых двух столбцах в первой строке равны 0, один из этих столбцов – это x -
предположим, что x – это первый столбец:
| x | ? | ? | F |
1 | 0 | 0 | | 0 |
2 | 0 | | | 0 |
тогда в обеих строках получаем