Теория:

Рассмотрим несколько способов решения логических задач.
Пример:
Коля, Вася и Серёжа гостили летом у бабушки. Однажды один из мальчиков нечаянно разбил любимую бабушкину вазу. На вопрос, кто разбил вязу, они дали такие ответы:
 
Серёжа: 1) Я не разбивал. 2) Вася не разбивал.
Вася: 3) Серёжа не разбивал. 4) Вазу разбил Коля.
Коля: 5) Я не разбивал. 6) Вазу разбил Серёжа.
 
Бабушка знала, что один из её внуков, назовём его правдивым, оба раза сказал правду; второй, назовём его шутником, оба раза сказал неправду; третий, назовём его хитрецом, один раз сказал правду, а другой раз — неправду.
Назовите имена правдивого, шутника и хитреца. Кто из внуком разбил вазу?
 
Пусть \(К =\) «Коля разбил вазу», \(В =\) «Вася разбил вазу» , \(С =\) «Серёжа разбил вазу» . Для решения задачи можно составить таблицу истинности, в которой представить высказывания каждого мальчика. Так как ваза разбита одним внуком, то чтобы выяснить, кто именно это сделал, достаточно фрагмента таблицы истинности, содержащего наборы значений входных переменных: \(001, 010, 100\).

р.png
 
Исходя из того, что знает о внуках бабушка, следует искать в таблице строку, содержащую в каком-либо порядке три комбинации значений: \(00\) (слова шутника), \(11\) (слова правдивого внука), \(01\) или \(10\) (слова хитреца). Вазу разбил Серёжа, он же оказался хитрецом. Шутником оказался Вася. Имя правдивого внука — Коля.
В соревнованиях по гимнастике участвуют Алла, Валя, Сима и Даша. Болельщики высказали предположения о возможных победителях:
  1. Сима будет первой, Валя — второй;
  2. Сима будет второй, Даша — третьей;
  3. Алла будет второй, Даша — четвёртой.
По окончании соревнований оказалось, что в каждом из предположений только одно из высказываний истинно, другое ложно. Какое место на соревнованиях заняла каждая из девушек, если все они оказались на разных местах?
 
Рассмотрим простые высказывания:
 
С1\(=\) «Сима заняла первое место»;
В2 \(=\) «Валя заняла второе место»;
С2\(=\) «Сима заняла второе место»;
Д3\(=\) «Даша заняла третье место»;
А2\(=\) «Алла заняла второе место»;
Д4\(=\) «Даша заняла четвёртое место».
 
Так как в каждом из трёх предположений одно из высказываний истинно, а другое ложно, то можно заключить следующее:
  1. С1+В2=1,С1В2=0;
  2. С2+Д3=1,С2Д3=0;
  3. А2+Д4=1,А2Д4=0.
Логическое произведение истинных высказываний будет истинным: С1+В2С2+Д3А2+Д4=1.
На основании распределительного закона преобразуем левую часть этого выражения: С1С2+С1Д3+В2С2+В2Д3А2+Д4=1.
 
Высказывание С1С2 означает, что Сима заняла и первое, и второе места. Согласно условию задачи, это высказывание ложно. Ложным является и высказывание В2С2. Учитывая закон операций с константой \(0\), запишем: С1Д3+В2Д3А2+Д4=1.
 
Дальнейшее преобразование левой части этого равенства и исключение заведомо ложных высказываний дают:
С1Д3А2+С1Д3Д4+В2Д3А2+В2Д3Д4=1.
 
С1Д3А2=1.
 
Из последнего равенства следует, что С1=1;Д3=1;А2=1. Это означает, что Сима заняла первое место, Алла — второе, Даша — третье. Следовательно, Валя заняла четвёртое место.
Источники:
Босова Л. Л., Босова А. Ю., Информатика: учебник для 8 класса. М. : БИНОМ. Лаборатория знаний, 32 с.