Задача к ЕГЭ по информатике на тему «таблицы истинности» №1

Логическая функция F  задаётся выражением:

(x ≡ y) ≡ (y ≡ z)

Составьте таблицу истинности. В качестве ответа введите количество строк, в которых F = 0.

Решение программой

print(’x y z f’)
for x in [0, 1]:
    for y in [0, 1]:
        for z in [0, 1]:
            f = (x == (not y)) == (y == (not z))
            print(x, y, z, f)

Решение аналитически

|--|--|--|--| |x-|y-|z-|F-| |0 |0 |0 |1 | |--|--|--|--| |0-|0-|1-|0-| |0-|1-|0-|1-| |0 |1 |1 |0 | |--|--|--|--| |1-|0-|0-|0-| |1-|0-|1-|1-| |1 |1 |0 |0 | |--|--|--|--| -1--1--1--1--

В таблице 23 = 8  строк.

1. F = 0  в случае, когда одна скобка будет истинна, а вторая ложна. Разберем случай, когда первая скобка истинна. Тогда x, y  принимают разные значения. Тогда вторая скобка должна быть ложна. И там уже y, z  принимают одинаковые значения. Этому условию удовлетворяют четвёртая, пятая строки.

2. Разберём случай, когда вторая скобка истинна, а первая ложна. Первая скобка ложна в случае одинаковых значений переменных x, y.  Вторая скобка истинна в том случае, если y, z  имеют разные значения. Этому условию удовлетворяют вторая и седьмая строки. Таким образом, всего четыре строки, в которых F = 0.

Ответ: 4
Оцените статью
Я решу все!