На Горох
Информатика, 10 класс

§ 32. Как построить логическую формулу

"Информатика (базовый уровень)", Гейн А.Г., Юнерман Н.А.

Объяснение темы В оглавлении: § 32. Как построить логическую формулу

Кратко о теме

Логическая формула переводит условие задачи на точный язык переменных и операций. Сначала из текста выделяют простые высказывания, затем обозначают их буквами, находят связки «не», «и», «или», «если… то» и расставляют скобки. Такой способ помогает записывать условия алгоритмов, строить таблицы истинности и проверять, при каких значениях условие будет истинным. Главное — сохранить смысл исходного предложения.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Логическая переменная — величина, принимающая одно из двух значений: истина или ложь. Её обозначают буквой, например A или B, поэтому вместо длинного условия можно работать с короткой записью. Переменная не является числом: она показывает только истинность конкретного высказывания.

Логическое высказывание — повествовательное предложение, о котором можно однозначно сказать, истинно оно или ложно. Например, предложение «7 больше 3» является высказыванием, а вопрос «Который час?» — нет. Выделение высказываний нужно, чтобы превратить обычный текст задачи в набор логических переменных.

Логическая операция — способ соединения или изменения высказываний с помощью связок НЕ, И, ИЛИ, ЕСЛИ…ТО. Операции записывают специальными знаками: ¬A, A ∧ B, A ∨ B и A → B. Благодаря им можно точно передать, какие условия должны выполняться вместе, какие допускают выбор, а какие зависят друг от друга.

Логическая формула — запись логического выражения с использованием переменных, операций и скобок. Например, A ∧ ¬B означает: A истинно, а B — ложно. Формула нужна для дальнейшей проверки условия, построения таблицы истинности или записи условия в программе.

Как это устроено

Сначала из условия выделяют простые высказывания — части, которые можно проверить независимо. Это делают потому, что логические операции работают с отдельными значениями истины и лжи, а не с неразобранным предложением. Например, в условии «число положительное и чётное» получаются два высказывания: «число положительное» и «число чётное».

Каждое найденное высказывание обозначают своей буквой и сразу записывают расшифровку обозначений. Такая запись предотвращает путаницу: по одной букве без пояснения нельзя понять, какое именно условие имеется в виду. Если два разных высказывания обозначить одной переменной, формула потеряет часть исходного смысла.

Затем находят слова, задающие логические операции. «Не» означает отрицание, «и» — одновременное выполнение условий, «или» — выбор хотя бы одного варианта, а «если… то» — зависимость между условием и следствием. Перевод связок нужен для того, чтобы не угадывать смысл по внешнему виду формулы, а точно воспроизвести отношения между частями предложения.

Сложное условие строят по частям: сначала записывают простые высказывания, затем объединяют близкие по смыслу группы. Так легче увидеть, к какой части относится каждая связка и отрицание. Скобки явно показывают структуру: например, (A ∨ B) ∧ C отличается от A ∨ (B ∧ C), потому что в первом случае сначала выбирают один из двух вариантов, а затем требуют C.

После записи формулы расставляют скобки и проверяют порядок выполнения операций. Это особенно важно, если в одном предложении встречаются «и», «или» и «не»: без скобок отрицание или группа условий могут быть поняты неправильно. Проверка состоит в обратном чтении формулы и сравнении каждой её части с исходным условием.

Этапы построения логической формулы

ЭтапЧто сделатьРезультат
Выделить простые высказыванияНайти в условии части, имеющие самостоятельный смысл и истинностное значениеПолучен набор высказываний для обозначения переменными
Обозначить высказыванияПрисвоить простым высказываниям буквенные именаПоявились логические переменные
Определить логические связкиУстановить, какие слова условия означают НЕ, И, ИЛИ, ЕСЛИ…ТОВыбраны логические операции
Соединить части условияЗаписать операции в том же смысловом порядке, что и в условииПолучена предварительная формула
Расставить скобки и проверить смыслУточнить порядок выполнения операций и сопоставить формулу с исходным предложениемПолучена корректная логическая формула

Таблицу удобно использовать как последовательный алгоритм, не пропуская ни одного шага. На первых этапах работают с текстом, а на последних проверяют уже полученную запись. Если на проверке смысл не совпал, нужно вернуться к обозначениям или скобкам.

Разбор задач

Число делится на 3 и не делится на 5

Условие: «Число x делится на 3 и не делится на 5». Здесь есть два самостоятельных высказывания и одно отрицание.

  1. Обозначим A: «x делится на 3», B: «x делится на 5».
  2. Союз «и» задаёт операцию ∧, а слово «не» перед вторым высказыванием — операцию ¬.
  3. Соединим части в порядке исходного предложения: A ∧ ¬B.

Ответ: A ∧ ¬B. Формула истинна только тогда, когда число делится на 3 и одновременно не делится на 5.

Условие допуска ученика

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

  1. Пусть A: «ученик выполнил лабораторную работу», B: «ученик сдал зачёт», C: «ученик имеет пропуски».
  2. Фраза «выполнит лабораторную работу или сдаст зачёт» даёт A ∨ B. «Не имеет пропусков» записывается как ¬C.
  3. Соединим два блока операцией И и поставим скобки: (A ∨ B) ∧ ¬C.

Ответ: (A ∨ B) ∧ ¬C. Одного из первых двух достижений достаточно, но пропусков быть не должно.

Срабатывание системы и датчики

Условие: «Система сработает тогда и только тогда, когда датчик A включён, а датчик B или датчик C неисправен». Слово «а» здесь соединяет обязательные части, а «или» объединяет два возможных неисправных датчика.

  1. Обозначим P: «система сработает», A: «датчик A включён», B: «датчик B неисправен», C: «датчик C неисправен».
  2. Правая часть условия имеет вид A ∧ (B ∨ C): датчик A должен быть включён, и неисправен хотя бы один из датчиков B и C.
  3. «Тогда и только тогда» обозначает равносильность, поэтому итоговая формула: P ↔ (A ∧ (B ∨ C)).

Ответ: P ↔ (A ∧ (B ∨ C)). Вложенные скобки показывают, что сначала рассматривается выбор между неисправностью B и C, а затем этот результат соединяется с включённым датчиком A.

Типичные ошибки

Ошибка: считать высказыванием любое предложение. Вопрос, просьба или фраза с неопределённым смыслом не имеют однозначного значения истины, поэтому их нельзя напрямую обозначить переменной. Проверьте предложение вопросом: можно ли для него уверенно ответить «истина» или «ложь»?

Ошибка: путать «и» с «или». Такое происходит, когда в обычной речи «или» иногда используют неточно, но в формуле оно означает возможность выполнить хотя бы одно условие. Для проверки спросите себя, обязательны ли обе части или достаточно одной.

Ошибка: отбросить отрицание или отнести его не к той части. Причина обычно в длинном предложении без скобок: ¬(A ∨ B) и ¬A ∨ B имеют разный смысл. Прочитайте формулу словами и убедитесь, что «не» относится именно к нужной группе.

Ошибка: записать переменные без определения. Тогда буква A может обозначать что угодно, а проверить формулу по условию невозможно. Перед формулой составьте короткий список: A — первое высказывание, B — второе, C — третье.

Связь с другими темами

Для построения формул нужно знать значения операций НЕ, И, ИЛИ и правила записи логических выражений. Эти навыки применяются при составлении условий в алгоритмах и программах, где логические выражения управляют выбором действий. Построенные формулы также используют в таблицах истинности, при упрощении выражений и проектировании логических схем.

Что запомнить

  • Сначала выделяют простые высказывания, затем соединяют их логическими операциями.
  • Каждой логической переменной соответствует конкретное простое высказывание.
  • Слово «не» обозначает отрицание высказывания.
  • Союз «и» задаёт конъюнкцию, а «или» — дизъюнкцию.
  • Скобки помогают сохранить смысл частей сложного условия.
  • Готовую формулу нужно проверить по исходному тексту, а не только по внешнему виду.

Частые вопросы по теме

Как понять, является ли предложение логическим высказыванием?

Логическое высказывание — повествовательное предложение, для которого можно однозначно установить истину или ложь. Вопросы, просьбы и неопределённые фразы высказываниями не являются.

Как обозначить части сложного условия буквами?

Разделите условие на простые высказывания, каждое из которых имеет самостоятельный смысл. Затем присвойте им разные буквы, например A, B и C, и запишите расшифровку обозначений.

В чём разница между логическими связками «и» и «или»?

Связка «и» требует истинности всех соединённых условий. При «или» достаточно истинности хотя бы одного условия, если из текста не следует другое ограничение.

Когда в логической формуле нужны скобки?

Скобки нужны, когда надо показать, какие части объединяются в группу и в каком порядке выполняются операции. Особенно они важны при нескольких связках или при отрицании сложного высказывания.

Как проверить, что построенная формула соответствует условию задачи?

Прочитайте формулу обратно словами и сопоставьте каждую переменную с исходным высказыванием. Отдельно проверьте отрицания, связки и границы скобок, подставив несколько возможных значений.

Спросить по теме параграфа

§ 32. Как построить логическую формулу

Эта же тема в других учебниках

Учебник

Оглавление →
Предмет
Информатика
Класс
10 класс
Учебник
"Информатика (базовый уровень)", Гейн А.Г., Юнерман Н.А.