1.5. Логика
1.5.1. Логическая алгебра. Константы и утверждения
Логическая алгебра - это раздел математической логики, изучающий операции над логическими значениями, утверждениями, выражениями и особенности этих операций. Логическая алгебра по другому называется булевой алгеброй по имени учёного Дж. Буля, положившего начало формированию логики, как научной дисциплины.
Утверждением (условием) в логической алгебре является любое высказывание, относительно которого можно сказать, ложно оно или истинно. Каждое утверждение всегда имеет одно из двух логических значений - истина или ложь. Утверждения могут выражаться при помощи слов, математических и химических символов и т.д.Попробуйте сами привести несколько примеров.
Константа - это величина, имеющая постоянное значение "ложь" или "истина".
Кроме логических констант применяются логические переменные, которым даются произвольные имена. Например: А, В, Х. Логические переменные могут приобретать значения 0 или 1 (ложь и истина, True и False).
По определённым законам над логическими константами, переменными, утверждениями можно производить некоторые операции, манипулировать ими. Всё это является объектом изучения логической алгебры.
Логические действия двоичны по своей сути, поэтому логическая алгебра лежит в основе анализа и проектирования логических схем, применяемых в вычислительной технике, которые состоят из логических элементов, осуществляющих логические операции.
1.5.2. Логические выражения
Логическое выражение – это выражение, состоящее из логических переменных, логических констант, знаков логических операций и скобок.
С логическими переменными (или утверждениями) мы уже познакомились. С константами тоже. Что такое скобки вы знаете.
С логическими операциями вы познакомились при изучении оператора IF. Поэтому здесь лишь отметим, как они записываются в логике:
Название | В Паскале | Обозначение |
Конъюнкция | A and B | A B |
Дизъюнкция | A or B | A V B |
Отрицание | not A | А |
Если вы не помните, как выполняются эти операции, вернитесь к главе с оператором IF.
При вычислении логических выражений операции выполняются в следующей последовательности:
-
сначала выполняются операции в скобках,
-
потом выполняются операции отрицания,
-
затем конъюнкция (),
-
затем дизъюнкция (V).
В остальных случаях операции выполняются по порядку записи.
Например:
2 1 4 3
A V B C V D E
Логическим выражением могут быть высказывания, например:
"Это двух- или трёхкомнатная квартира, но не первый и не последний этаж".
Логическое выражение, соответствующая вышесказанному, таково:
(к2 V к3) э1 эП,
где к2 - двухкомнатная квартира,
к3 - трёхкомнатная квартира,
э1 - квартира на 1 этаже.
эП - квартира на последнем этаже.
1.5.3. Таблицы истинности
Давайте запишем в одну таблицу значения простейших логических выражений для всех возможных значений переменных.
A | B | A V B | A B | A |
0 | 0 | 0 | 0 | 1 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 1 | 0 | 0 |
1 | 1 | 1 | 1 | 0 |
Таблица, в которой представлены все возможные комбинации логических переменных и указано значение некоторого логического выражения для каждой комбинации переменных, называется таблицей истинности.
Таблицу истинности можно составить для любого логического выражения.
Логические выражения, таблицы истинности которых совпадают, называют эквивалентными.
Рассмотрим логическое выражение: A V B C. В это выражение входит 3 аргумента: A, B и C. Каждое из них может принимать одно из двух значений: либо 0, либо 1. Следовательно, для того чтобы построить таблицу истинности данного логического выражения, необходимо пересмотреть 23 различных комбинаций значений переменных A, B, C. В таблице истинности значение логического выражения проще считать по частям:
A | B | C | B C | A V (B C) |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 0 |
0 | 1 | 0 | 0 | 0 |
0 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 1 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
При вычислении значений выражения в последнем столбике используется результат B C, вычисленный и записанный в предпоследнем столбике. Чтобы не допустить ошибку при составлении таблицы истинности, нужно составлять её по частям, как в последнем примере.
1.5.4. Законы логической алгебры
Знак равенства всюду означает, что выражения в левой и правой частях эквивалентны, т.е. они принимают одни и те же значения истинности при любых наборах значений входящих в них утверждений.
1. Коммутативность
a) конъюнкции: b) дизъюнкции:
A B = B A A v B = B v A
2. Ассоциативность
а) конъюнкции:
А (В С) = (А В) С = А В С
б) дизъюнкции:
А v (B v C) = (A v B) v C = A v B v C
3. Дистрибутивность
a) конъюнкции относительно дизъюнкции:
A (B v C) = (A B) v (A C)=A B v A C
б) дизъюнкции относительно конъюнкции:
A v (B C) = (A v B) (A v C)
4. Закон двойного отрицания: не (не (А)) = А
5. Закон противоречия: A (не A) = 0
6. Закон исключённого третьего: A v (не А) = 1
7. Закон де Моргана
а) отрицание конъюнкции: (не A) (не B) = не (A v B)
б) отрицание дизъюнкции: (не A) v (не B) = не (A B)
8. Закон поглощения:
а) А 1 = А б) A v 1 = 1
А 0 = 0 A v 0 = A
9. Идемпотентность:
A A = A; A v A = A
- Лекции по Turbo Pascal 7.0
- 1 Курс, «Информатика»
- Интегрированная среда Turbo Pascal 7.0
- Первый шаг
- Создание нового файла
- Набор и редактирование текста программы
- Клавиши перемещения курсора
- Клавиши для редактирования текста:
- Сохранение и открытие программ
- Запуск программы
- Завершение работы
- А теперь, когда вы уже знаете, как набирать и запускать программы на компьютере, начнём изучать язык паскаль.
- Первая программа
- Краткая история
- Что такое программа?
- Зарезервированные слова
- Переменные
- Константы
- Стандартные математические операции
- В информатике, как и в математике, на ноль делить нельзя!
- Оператор присваивания
- Пример программы
- Операторы ввода и вывода.
- Оператор ввода Readln
- Оператор вывода Write
- Самостоятельные задания
- Работа с цифрами
- Выделение цифр числа
- Конструирование числа по его цифрам
- Обобщение
- Самостоятельные задания
- Условный оператор
- Что такое условие?
- Укороченный вариант условного оператора
- Составной оператор
- Составные условия
- “Защита от дурака”
- Вложенные условные операторы
- Оператор выбора Case
- Самостоятельные задания
- Стандартные типы переменных
- Общий обзор стандартных типов.
- Целые типы
- Вещественные типы
- Способ записи вещественных чисел
- Вывод на экран вещественных чисел
- Точность и диапазон вещественных чисел различных типов
- Вещественные функции
- Линейная запись математических выражений
- Логический тип
- Символьные типы
- Стандартные функции для работы со строками
- Стандартные функции для типа char
- Подпрограммы
- Зачем нужны подпрограммы?
- Процедуры
- Аргументы процедуры
- Результаты процедуры
- Функции
- Самостоятельные задания
- Цикл For
- Руками не трогать!
- Нахождение суммы
- Нахождение произведения
- Нахождение количества
- Цикл While ... Do
- Цикл Repeat ... Until
- 2.7. Самостоятельные задания
- Цикл в цикле
- Натуральные числа
- Делители чисел
- Самостоятельные задания.
- Простые числа
- Самостоятельные задания.
- Наибольший общий делитель двух чисел.
- Самостоятельные задания.
- Наименьшее общее кратное двух чисел
- Самостоятельные задания.
- Массивы
- Определение и примеры
- Операции с элементами массива
- Анализ информации в массиве
- Рекуррентные соотношения
- Самостоятельное задание
- Последовательность Фибоначчи
- Другие рекуррентные последовательности
- Оптимизация программ
- Задача про интеллигентного студента.
- Самостоятельные задания
- Оформление программ
- Понятие модуля
- Управление цветом
- Управление звуком
- Опрос клавиатуры
- Управление курсором.
- Дополнительные задачи и вопросы
- Теоретические вопросы
- Практические задачи
- Условия
- Ряды и рекуррентные последовательности
- Просмотр всех команд меню
- Команды меню File
- Команды меню Edit
- Команды меню Search
- Команды меню Run
- Команды меню Compile
- Команды меню Debug
- Команды меню Options
- Команды меню Window
- Команды меню Help
- Синтаксические ошибки
- Ошибки выполнения
- Логические ошибки
- Средства отладки
- Пошаговый режим работы программы
- Просмотр/изменение переменных
- Окно Watch
- 1. Теоретическая часть
- 1.1. Понятие алгоритма и его свойства.
- 1.2. Культура программирования
- 1.3. Устройство компьютера и его компоненты.
- 1.4. Информация
- 1.5. Логика
- 1.6. Системы счисления
- 1.7. Арифметические действия с двоичными числами
- 1.8. Информационные взаимодействия – коммуникации
- 1.9. Информационная революция
- 1.10. Компьютеры и информационное общество.
- 1.11. Польза и опасности компьютеризации.
- 1.12. Киберфобия.
- 1.13. Компьютеры и будущее
- 1.14. Понятие информационного моделирования.
- 2. Толковый словарик