Тема: Данные логического типа.
План:
- Данные логического типа.
- Логические выражения.
- Условный оператор.
Скачать:
Вложение | Размер |
---|---|
![]() | 39.5 КБ |
Предварительный просмотр:
Лекция №4
Тема: Данные логического типа.
План:
- Данные логического типа.
- Логические выражения.
- Условный оператор.
Данные логического типа
Логический тип данных часто называют Булевым типом, по имени английского математика Д. Буля, создателя особой области математики – логики. Основу математической логики составляют две константы: True (Истина, 1) и False (Ложь, 0). Логические данные широко используются при сравнении величин. Результат сравнения может быть истинным или ложным.
Примеры.
- a2=b2+c2 – истинно при a=5, b=4, c=3
ложно при a=2, b=3,c=4.
- x2<0 – всегда ложно.
В языке Паскаль переменные логического типа могут принимать значения True и False. Описание переменной имеет тип Boolean:
Var
A, B: Boolean;
В теле программы такой переменной можно присваивать значения логических констант True и False.
Пример.
A:=True;
B:=False;
Логические выражения
Как уже отмечалось выше, логические данные широко используются при сравнении величин. В результате сравнении величин, получается либо ложное, либо истинное значение. В языке Паскаль для сравнения данных предусмотрены следующие операции отношения (сравнения):
< - меньше;
> - больше;
= - равно;
<= - меньше или равно;
>= - больше или равно;
<> - не равно.
Отношения можно использовать в правой части оператора присваивания. Например:
A:=3<6; {Всегда False}
A:=x1<>x2;
B:=(x1+x2)<18;
В математической логике имеются специальные логические операции:
Or – логическое сложение (ИЛИ)
And –логическое умножение (И)
Not – логическое отрицание (НЕ)
Логическое сложение дает ложный результат только в том случае, когда оба операнда ложные.
Логическое умножение дает истинный результат только в том случае, когда оба операнда истинны.
Операция отрицания дает ложный результат, если операнд истинный, и, наоборот, истинный результат, если операнд ложный.
Данные о результатах логических операций представлены в таблице 1.
Таблица 1
A | B | A or B | A and B | Not A |
False | False | False | False | True |
False | True | True | False | True |
True | False | True | False | False |
True | True | True | True | False |
Примеры.
(A<3)Or(B>2) – при a=4, b=0 – ложно, при a=4, b=3 – истина.
(A<3)And(B>2) – при a=1, b=10 –истина, при a=3, b=3 – ложь.
Not (A<2) – при a=1 – ложь, a=4 – истина.
Таким образом, логические выражения строятся из логических переменных, логических констант, логических операций, операций отношений.
Условный оператор
Нам часто приходиться в своей жизни что-либо делать в зависимости от определенных условий, например, мы берем с собой зонт, если идет дождь, или на небе тучи. Аналогичное положение встречается в математике, например,
Если x<0, то y=x+1;
Если x>=0, то у=2*x.
Иначе это условие можно записать следующим образом:
Если x<0, то y=x+1
иначе у=2*x.
Здесь в зависимости от условий выполняется одно из двух действий: либо вычисляется y=x+1, либо y=2*x. Для программирования таких ситуаций в языке Паскаль существует условный оператор, который имеет две формы: полную и краткую.
Полная форма имеет следующий вид:
If условие Then оператор1
Else оператор2 ;
Здесь оператор1 и оператор2 – простые или составные операторы. Составной оператор – это оператор, состоящий из двух и более операторов, он заключается в операторные скобки Begin End. Условие – любое логическое выражение.
Если логическое выражение истинно, выполняется оператор1, если ложно, выполняется оператор2. В качестве оператора1, оператора2 могут быть также условные операторы.
Для рассматриваемого примера, условный оператор выглядит следующим образом:
If x<0 Then y:=x+1
Else y:=2*x;
Если в нашем примере описать логическую переменную В, то можно записать так:
B:=x<0;
If B Then y:=x+1
Else y:=2*x;
Мы рассмотрели полную форму условного оператора, но в языке допускается и краткая форма, которая имеет вид:
If условие Then оператор;
Если условие истинно, то выполняется оператор, например
If Not((x<3)and(x>1)) Then y:=Sqr(x);