19427

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

Реферат

Информатика, кибернетика и программирование

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

Русский

2013-07-12

44 KB

9 чел.

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

Для того чтобы понять работу ветвящихся и циклических алгоритмов, рассмотрим понятие логического выражения.

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

Например, расчёт корней квадратного уравнения производится по-разному в зависимости от дискриминанта (вспомните математику).

В результате сравнения значений двух выражений возможны два варианта ответа: сравнение истинно или ложно?

Например:

2+3 > 3+1 - да (истинно)

0 < -5 - нет (ложно)

Выражения такого вида мы будем называть логическими выражениями.

Логическое выражение, подобно математическому выражению, выполняется (вычисляется), но в результате получается не число, а логическое значение: истина (true) или ложь (false). Логическая величина – это всегда ответ на вопрос, истинно ли данное высказывание.

Нам известны шесть операций сравнения:

знак отношения

операция отношения

=

равно

<>

не равно

>

больше

<

меньше

>=

больше или равно

<=

меньше или равно


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

5 > 3

a < b

c <> 7

Как выполняются операции отношения для числовых величин понятно из математики. Как же сравниваются символьные величины? Отношение «равно» истинно для двух символьных величин, если их длинны одинаковы и все соответствующие символы совпадают. Следует учитывать, что пробел тоже символ.

Символьные величины можно сопоставлять и в отношениях >, <, >=, <=. Здесь упорядоченность слов (последовательности символов) определяется по алфавитному принципу.

«кот» = «кот»

«кот» < «лис»

«кот» > «дом»

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

Часто встречаются задачи, в которых используются не отдельные условия, а совокупность связанных между собой условий (отношений). Например, в магазине вам нужно выбрать туфли, размер которых r = 45, цвет color = белый, цена price не более 400руб.

Другой пример: школьник выяснил, что сможет купить шоколадку, если она стоит 3руб. или 3руб. 50коп.

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

Так условия наших примеров в алгоритме могут выглядеть таким образом:

первое: (r = 45) и (color = белый) и (не (price>400))

второе: (цена=3) или (цена=3.5)

Выражение, содержащее логические операции, будем называть сложным логическим выражением.

Объединение двух (или нескольких) высказываний в одно с помощью союза «и» называется операцией логического умножения или конъюнкцией.

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

Объединение двух (или нескольких) высказываний с по мощью союза «или» называется операцией логического сложения или дизъюнкцией.

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

Присоединение частицы «не» к высказыванию называется операцией логического отрицания или инверсией.

Отрицание изменяет значение логической величины на противоположное: не истина = ложь; не ложь = истина.

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

  1.  отрицание (не);
  2.  конъюнкция (и);
  3.  дизъюнкция (или).

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

Пример. Пусть a, b, c – логические величины, которые имеют следующие значения: a = истина, b = ложь, c = истина. Необходимо определить результаты вычисления следующих логических выражений:

  1.  a и b
  2.  a или b
  3.  не a или b
  4.  a и b или c
  5.  a или b и c
  6.  не a или b и c
  7.  (a или b) иили b)
  8.  не (a или b) иили b)
  9.  не ( a и b и c)

Получим в результате:

  1.  ложь
  2.  истина
  3.  ложь
  4.  истина
  5.  истина
  6.  ложь
  7.  истина
  8.  ложь
  9.  истина.

Пример. Составить алгоритм для вычисления:

Алгоритм Вычисление x
переменные a, c, x - вещественные
начало
ввод (а, c)
если (4*а – с >=0) и (а<>0) то
начало
x := корень(4*а – с)/(2*a)
вывод (х)
конец
иначе
вывод («нет решения»)
конец

Компьютер сначала проверит условие (4*а – с >=0) и (а<>0) и если оно окажется истинно, то вычислить x, иначе выведет сообщение «нет решения».

Пример. Составить алгоритм для вычисления суммы всех чисел от 1 до n.

Алгоритм Вычисление суммы чисел
переменные a, c, x - вещественные
начало
ввод (n)
x := 1
пока x<n повторять
начало
s := s + x
x := x +1
конец
вывод (s)
конец

До тех пор пока условие x<n будет истинно компьютер будет выполнять тело цикла – вычислять очередную сумму и увеличивать x на единицу.


 

А также другие работы, которые могут Вас заинтересовать

17540. Системи числення (позиційні, непозиційні) 1.16 MB
  Лабораторна робота №1 Тема: Системи числення позиційні непозиційні. Мета: Виконати переведення чисел між різними системами числення та основні алгебраїчні операції між числами двійкової системи. Теоретичні відомості Сукупність прийомів та правил найменування й...
17541. Побудова схем за допомогою програми Electronics Workbench (EWB) та створення таблиць істинності в табличному процесорі Microsoft Excel 161 KB
  Лабораторна робота №2 Тема: побудова схем за допомогою програми Electronics Workbench EWB та створення таблиць істинності в табличному процесорі Microsoft Excel. Мета: використовуючи логічні функції табличного процесора Microsoft Excel створити таблиці істинності функцій заданих аналіт...
17542. Основні аксіоми та закони алгебри логіки 85 KB
  Лабораторна робота №3 Тема: основні аксіоми та закони алгебри логіки. Мета:довести аналітичним способом та методом повного перебору логічні функції за допомогою основних аксіом та законів алгебри логіки. Варіант 13 Теоретичні відомості Логічна функція – це склад...
17543. Основні теореми підстановок та розкладання алгебри логіки 301.5 KB
  Лабораторна робота №4 Тема: основні теореми підстановок та розкладання алгебри логіки. Мета: вирішити задачі за допомогою теорем підстановок та розкладання. Варіант 13 Теоретичні відомості При побудові складних логічних схем із логічних елементів використовую
17544. Представлення перемикаючих функцій у канонічних формах 86.5 KB
  Лабораторна робота №5 Тема: представлення перемикаючих функцій у канонічних формах. Мета: перевести довільну булеву функцію у канонічні форми: ДДНФ ДНФДКНФ КНФ. Варіант 13 Теоретичні відомості: Диз’юнкція конституент одиниці рівних одиниці на тих наборах що ...
17545. Скорочені нормальні форми. Мінімізація булевих функцій задопомогою імплікатних матриць 276.5 KB
  Лабораторна робота №5 Тема: скорочені нормальні форми. Мінімізація булевих функцій задопомогою імплікатних матриць. Мета: виконати мінімізацію перемикаючих функцій методом імплікантних матриць. Варіант 13 Теоретичні відомості: Мінімальні форми представленн
17546. Мінімізація перемикаючих функцій за допомогою площинних діаграм 188 KB
  Лабораторна робота №7 Тема: мінімізація перемикаючих функцій за допомогою площинних діаграм. Мета: виконати мінімізацію перемикаючих функцій метод площинних діаграм. Варіант 13 Теоретичні відомості: Процедура мінімізація перемикаючих функцій за допомогою...
17547. ИСПЫТАНИЯ ПУСКОВОГО ПОРШНЕВОГО КОМПРЕССОРА 7.94 MB
  Лабораторная работа № 3 ИСПЫТАНИЯ ПУСКОВОГО ПОРШНЕВОГО КОМПРЕССОРА 1.Стенд поршневого компрессора среднего давления На стенде установлен компрессор типа 2 OK1 см. рис.1. Данные компрессора 2 OK1 Число ступеней 2 Число рабочих полостей каждой ступени 1 Ч...
17548. ИСПЫТАНИЯ POTOРHO-ЛОПАСТНОГО КОМПРЕССОРА 675.5 KB
  Лабораторная работа №5 ИСПЫТАНИЯ POTOРHOЛОПАСТНОГО КОМПРЕССОРА 1. Стенд роторнолопастного компрессора РЛК На лабораторном стенде установлен продувочный компрессор двигателя ЯАЗ204. Основные данные компрессора Диаметр окружности выступов роторов мм 145; ...