• Предмет: Информатика
  • Автор: prostohellochik1
  • Вопрос задан 6 лет назад

Всем привет, нужна помощь со 2 заданием из ЕГЭ по инфе.

Сделал программу для просчёта логической функции (x ≡ y ) ∨ ((y ∨ z) → x).

Нужно определить, какому столбцу таблицы истинности соответствует каждая из переменных x, y, z.

Но полученные ответы имеют не 6 ответов, а 18.

Кто-нибудь помогите...

(прикрепил прогу с ответами и задачу). Заранее огромное спасибо за помощь.

Приложения:

Ответы

Ответ дал: Рулез
1

Ответ:

Ответ в картинках.

def f(x,y,z):

   return (x == y) or ((y or z) <= x)

for x in range(2):

   for y in range(2):

       for z in range(2):

           if not f(x,y,z):

               print(x,y,z)

Объяснение:

У тебя не верная логика в условии if.

сравнение == False применяется только к (y or z) <= x, а должно ко всему выражению.

Приложения:

prostohellochik1: Понял, ещё раз огромное спасибо! Буду теперь в конце всю логическую цепочку ставить в общие скобки.
Рулез: угу. И вместо == False проще использовать not перед общей скобкой
prostohellochik1: Понял.
Вас заинтересует