Логические функции на области числовых значений



Занятие № 19 лекция

Тема: Логические величины и выражения. Программирование ветвлений

Дидактическая цель: знакомство с основами алгоритмизации и структурного программирования

Литература: Семакин, Информатика, 10 класс, стр. § 19,20

Вопросы и задания

1 Внимательно прочитать материал § 19, 20

2 Устно ответить на вопросы после параграфов

3 В тетради записать дату и тему занятия.

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

Логические величины, операции, выражения

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

К числу основных понятий логики относятся: высказывание, логическая величина, логические операции, логические выражения и формулы.

Высказывание (суждение) — это повествовательное предложение, в котором что-либо утверждается или отрицается. По поводу любого высказывании можно сказать, истинно оно или ложно.

Например, высказывание «На улице идет дождь» будет истинным или ложным в зависимости от состояния погоды в данный момент. Истинность высказывания «Значение А больше, чем В», записанного в форме неравенства: А > В, будет зависеть от значений переменных А и В.

Логические величины — понятия, выражаемые словами: ИСТИНА, ЛОЖЬ (true, false). Следовательно, истинность высказываний выражается через логические величины.

Логическая константа: ИСТИНА или ЛОЖЬ.

Логическая переменная: символически обозначенная логическая величина. Следовательно, если известно, что А, В, X, Y и др. — переменные логические величины, то, значит, они могут принимать значения только ИСТИНА или ЛОЖЬ.

Логическое выражение — простое или сложное высказывание. Сложное высказывание строится из простых с помощью логических операций (связок).

Логические операции

Конъюнкция (логическое умножение). В русском языке она выражается союзом И. В математической логике используются знаки & или ∧. Конъюнкция — двухместная операция; записывается в виде: А & В. Значением такого выражения будет ЛОЖЬ, если значение хотя бы одного из операндов ложно.

Дизъюнкция (логическое сложение). В русском языке этой связке соответствует союз ИЛИ. В математической логике она обозначается знаком v. Дизъюнкция — двухместная операция; записывается в виде: A v В. Значением такого выражения будет ИСТИНА, если значение хотя бы одного из операндов истинно.

Отрицание. В русском языке этой связке соответствует частица НЕ (в некоторых высказываниях применяется оборот «неверно, что ...»). Отрицание — унарная (одноместная) операция; записывается в виде: А или Ā.

Правила выполнения рассмотренных логических операций отражены в следующей таблице, которая называется таблицей истинности логических операций (здесь И означает «истина», Л — «ложь»):

Логическая формула — формула, содержащая лишь логические величины и знаки логических операций. Результатом вычисления логической формулы является ИСТИНА или ЛОЖЬ.

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

Например: (А & В) v ( А & В) v ( А & В).

Пример. Вычислить значение логической формулы:

X & Y v X & Z,

если логические переменные имеют следующие значения: X = ЛОЖЬ, Y = ИСТИНА, Z = ИСТИНА.

Решение. Отметим цифрами сверху порядок выполнения операций в формуле:

Используя таблицу истинности, вычислим формулу по шагам:

1) ЛОЖЬ = ИСТИНА;

2) ИСТИНА & ИСТИНА = ИСТИНА;

3) ЛОЖЬ & ИСТИНА = ЛОЖЬ;

4) ИСТИНА v ЛОЖЬ = ИСТИНА.

Ответ: ИСТИНА.

Логические функции на области числовых значений

Алгебра чисел пересекается с алгеброй логики в тех случаях, когда приходится проверять принадлежность значений алгебраических выражений некоторому множеству. Например, принадлежность значения числовой переменной X множеству положительных чисел выражается через высказывание: «X больше нуля». Символически это записывается так: Х > 0. В алгебре такое выражение называют неравенством. В логике — отношением.

Отношение X > 0 может быть истинным или ложным. Если X — положительная величина, то оно истинно, если отрицательная, то ложно. В общем виде отношение имеет следующую структуру:

< выражение 1 > < знак отношения > < выражение 2 >

Здесь выражения 1 и 2 — некоторые математические выражения, принимающие числовые значения. В частном случае выражение может представлять собой одну константу или одну переменную величину. Знаки отношений могут быть следующими:

Итак, отношение — это простое высказывание, а значит, логическая величина. Оно может быть как постоянной: 5 > 0 — всегда ИСТИНА, 3 * 6 : 2 — всегда ЛОЖЬ; так и переменной: а < b, х + 1 = с - d. Если в отношение входят переменные числовые величины, то и значение отношения будет логической переменной.

Отношение можно рассматривать как логическую функцию от числовых аргументов. Например: F(x) = (х > 0) или Р(х, у) = = (х < у). Аргументы определены на бесконечном множестве действительных чисел, а значения функции — на множестве, состоящем из двух логических величин: ИСТИНА, ЛОЖЬ.

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

Пример 1. Записать предикат (логическую функцию) от двух вещественных аргументов X и Y, который будет принимать значение ИСТИНА, если точка на координатной плоскости с координатами X и Y лежит внутри единичной окружности с центром в начале координат (рис. 3.12).

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

F(Х, У) = (X2 + У2 < 1).

Для значений координат точек, лежащих на окружности и вне ее, значение функции F будет ложным.

Пример 2. Записать предикат, который будет принимать значение ИСТИНА, если точка на координатной плоскости с координатами X и У лежит внутри кольца с центром в начале координат, и радиусами R1 и R2.

Поскольку значения R1 и R2 — переменные величины, искомая логическая функция будет иметь четыре аргумента: X, У, R1, R2. Возможны две ситуации:

1) R12 < X2 + У2 < R22 и R1 < R2: R1 — внутренний радиус, R2 — внешний радиус;

2) R22 < X2 + У2 < R12 и R2 < R1: R2 — внутренний радиус, R1 — внешний радиус.

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

F(Х, У, R1, R2) = (((X2 + У2) > R12) & ((X2 + У2) < R22) & R1 < R2) v (((X2 + У2) > R22) & ((X2 + У2) < R12) & R2 < R1).

Пример 3. Записать предикат, который будет принимать значение ИСТИНА, если точка на координатной плоскости с координатами X и У лежит внутри фигуры, ограниченной жирными линиями на рис. 3.13.

Фигура ограничена тремя границами, описываемыми уравнениями:

У = -X — левая граница, линейная функция;

У = 1 — верхняя граница, константа;

У = X2 — правая граница, парабола.

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

Во внутренних точках все эти три отношения являются одно-временно истинными. Поэтому искомый предикат имеет вид:

F(X, У) = (У > -X) & (Y < 1) & (У > X2).


Дата добавления: 2020-11-23; просмотров: 388; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!