1. Главная
  2. Библиотека
  3. Логика
  4. Слон Семён программирует сигнализацию. У него есть три...
Разбор задачи

Слон Семён программирует сигнализацию. У него есть три датчика, сообщающих показания в виде логических значений («ложь» или «истина»). Если хотя бы два датчика передают «истину», нужно включить сирену, если нет - её включать не надо. Программа для

  • Предмет: Логика
  • Автор: Кэмп
  • #Логика программирования
  • #Компьютерная логика
Слон Семён программирует сигнализацию. У него есть три датчика, сообщающих показания в виде логических значений («ложь» или «истина»). Если хотя бы два датчика передают «истину», нужно включить сирену, если нет - её включать не надо. Программа для

Условие:

Слон Семён программирует сигнализацию. У него есть три датчика, сообщающих показания в виде логических значений («ложь» или «истина»). Если хотя бы два датчика передают «истину», нужно включить сирену, если нет - её включать не надо. Программа для сигнализации представляет собой логическое выражение от переменных xx, y,zy, z, в котором могут использоваться сами переменные, пробелы, круглые скобки, onepaции and (логическое И) и or (логическое ИЛИ). Другие операции и константные логические значения использоваться не могут. Сирена включается, когда результат выражения равен «истине».

Пример выражения, использующего разрешённые символы: ( xx and yy ) or ( zz and zz ). Такая программа использует три логические операции, однако не подойдёт для сигнализации. Исходы операций xx and yy и xx or yy для всех возможных значений xx и yy приведены в таблице.

\begin{array}{|c|c|c|c|} \hline $x$ & $y$ & $x$ and $y$ & $x$ or $y$ \\ \hline Ложь & Ложь & Ложь & Ложь \\ \hline Ложь & Истина & Ложь & Истина \\ \hline Истина & Ложь & Ложь & Истина \\ \hline Истина & Истина & Истина & Истина \\ \hline \end{array}

При отсутствии скобок операция and имеет больший приоритет, чем операция or, то есть выражение xx and yy or zz and zz обозначает ( xx and yy ) or ( zz and zz ). Чтобы сэкономить память контроллера, Слон Семён хочет использовать как можно меньше логических операций. Помогите ему составить программу. При записи ответа имена переменных и названия операций разделяйте пробелом. Символы, не описанные в условии, использовать нельзя. Длина ответа не должна превышать 100 символов. Чем меньше операций and и or будет в вашем решении, тем больше баллов вы получите.

Решение:

Рассмотрим все случаи, когда хотя бы два датчика истинны:

  1. x и y истинны (z любое) — выражение x and y
  2. x и z истинны (y любое) — выражение x and z
  3. y и z истинны (x любое) — выражение y and z

    Достаточно, чтобы хотя бы одно из этих трёх условий выполнялось. Объединим...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какое логическое выражение корректно описывает условие, при котором сирена включается, если хотя бы два из трёх датчиков (x, y, z) передают «истину»?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет