Найти в Дзене

Задание номер 2 ЕГЭ по информатике

Для решения этого задания легче всего использовать Python. Нужно знать логические функции и как они обозначаются в питоне

Инверсия - ¬ (отрицание) - not()

Конъюнкция - ∧ (умножение) - and

Дизъюнкция - v (сложение) - or

Импликация - → (следование) - <=

Эквивалентность - ≡ (равенство) - ==

Для начала надо ввести обозначения. Чтобы это сделать пишем print('x y z w')

Будем перебирать для каждой логической переменной все возможные варианты в программе. А логическая переменная всего два значения может принимать: 1 или 0 (истину или ложь). Таким образом, если к примеру у нас 4 переменные, мы получим 2⁴=16 различных комбинаций.

В задании у нас есть 4 переменные: x, y, z, w. Каждую переменную мы вводим в цикл от 0 до 1 командной for переменная (x/y/z/w) in range(2).

Далее у нас 2 варианта события: либо в таблице f=0, либо в таблице f=1. В первом варианте мы пишем: if not(логическое уравнение) == 0. Во втором варианте пишем: if (логическое уравнение) ==0.

Допустим в задании у нас такое логическое уравнение:(w → z) ∧ ((y → x) ≡ (z → y)). В питоне же оно будет выглядеть так: (w <= z) and ((y <= x) == (z <= y). Если F=0, то перед этим приписываем if not, во втором случае знаем что писать.

После этих махинаций пишем print(x, y, z, w) и у нас будет таблица, где из значений только 0 и 1. Просто сопоставляем эту таблицу с таблицей, которая у нас в задании, и ответ понятен.

В данном случае код будет выглядеть так:

print('x y z w')

for переменная x in range(2):

for переменная y in range(2):

for переменная z in range(2):

for переменная w in range(2):

if not((w <= z) and ((y <= x) == (z <= y)) == 0:

print(x, y, z, w)

Надеюсь объяснил кратко и понятно.