Реферат: Iii. Логический тип boolean
III. Логический тип BOOLEAN
Логический тип данных часто называют булевым по имени английского математика Д. Буля, создателя одной из областей математики — математической логики.
Основу математической логики составляют две константы — 0 (ложь) , 1 (истина) и действия над ними. Логические данные широко используются при сравнении величин, результат сравнения может быть истинным или ложным. Логические данные и операции над ними имеют важное значение в информатике, так как позволяют внести в расчеты элементы человеческой логики.
Пример:
а) А*А=В*В+С*С истинно при А=5,В=4,С=3, ложно при А=В=5, С=2.
б) Х*Х < 0 — всегда ложно при любых Х.
в) А > В+3 — истинно при А=6, В=1, ложно при А=2, В=10.
1. В языке Pascal имеется две логических величины: TRUE (истина) и FALSE (ложь). Они занимают в памяти по 1 байту.
2. В разделе описаний:
CONST
T: TRUE;
F1, LS : FALSE;
VAR L1, L4: BOOLEAN;
В разделе операторов такой переменной может быть присвоено значение логической константы, например, L1:= TRUE; L4:=L1.
Если справа в операторе присваивания стоит арифметическое или логическое выражение, то получим логическое значение: истинно данное выражение или ложно.
3. Операции.
Для сравнения данных предусмотрены следующие операции отношений:
< (меньше), <= (меньше или равно), = (равно), <> (не равно), > (больше),
>= (больше или равно).
Пример:
а) 6=2 результат - FALSE,
б) А
в) С=4*Т результат FALSE при С=5 и Т=1.
Задание 1: определить, какая информация будет выведена на экран при выполнении программы.
PROGRAM LOG1;
CONST A=2; B:=6;
VAR L1, L2 : BOOLEAN;
BEGIN
L1:=A<>B; L2:= A+B<4;
WRITELN(‘Ответ1 = ‘, L1); WRITE(‘Ответ2 = ‘, L2)
END.
4. В языке Pascal, как и в математической логике, имеются специальные логические операции:
OR (или)— логическое сложение, дает ложный результат только тогда, когда оба операнда ложны, в остальных случаях результат — истина.
^ AND (и) — логическое умножение, дает истинный результат только тогда, когда оба операнда истинны, в остальных случаях результат — ложь.
NOT(не) — логическое отрицание, дает истинный результат, когда выражение ложно и наоборот.
^ Таблица истинности логических операций
А
B
A OR B
A AND B
NOT A
TRUE
TRUE
TRUE
TRUE
FALSE
TRUE
FALSE
TRUE
FALSE
FALSE
FALSE
TRUE
TRUE
FALSE
TRUE
FALSE
FALSE
FALSE
FALSE
TRUE
Правила вычислений логических выражений.
1. Приоритет операций:
1) NOT
2) *, /, DIV, MOD, AND
3) +, — , OR
4) <, >, >=, <=, =, <>.
2. Допускается использовать только круглые скобки.
3. В круглые скобки обязательно заключаются части выражений, стоящие справа и слева от операций AND и OR .
Примеры.
1. D:=(A>5) OR (C=3) при A=10, C=1 D= TRUE,
при A=2, C=1 D=FALSE,
при A=2, C=3 D=TRUE .
2. N:=(A>5) AND (C=3) при A=10, C=3 N= TRUE,
при A=2, C=3 N= FALSE,
при A=12, C=2 N= FALSE.
3. P:=NOT(A=2) при A=5 P= TRUE,
при А=2 Р= FALSE.
Задание 2: Определить результаты логических выражений: при А=2, В=8, С=5.
P:=(A*B) <= C
P:=(A+C) <> 45
P:=(A>0) OR (B<7)
P:=(A<3) OR (B>A+6)
X:=NOT(A>3) AND (B=A+6)
D:=(A>3) AND (B=A+6) OR NOT(C=4)
P:=(A<>2) OR (B>=A+6) AND (C>A+1)
X:=(A<3) AND (B=A+6)
D:=(A>3) AND (B=A+6) OR NOT(C=4) OR NOT(B=7)
X:=(A<3) AND (B=A+6) AND (C=A+3) OR (B<>A+C+1)
Задача: Верно ли что треугольник с углами А и В прямоугольный?
PROGRAM LOG2;
VAR А, В, C: INTEGER;
L : BOOLEAN;
BEGIN
WRITELN(‘Введите величины углов в градусах ‘);
READ(A,B);
WRITELN;
C:=180-(A+B);
L:=(A=90) OR (B=90) OR (C=90);
^ WRITELN(‘Треугольник с углами А и В прямоугольный? ‘, L);
END.
Задачи для самостоятельного решения
Даны стороны прямоугольника а и в. Найти его площадь S. Выяснить больше ли данная площадь числа 20 или нет (True или False).
Данные а=8, в=3; а=5, в=3.
Дан больший угол треугольника А в градусах. Определить, верно ли, что треугольник остроугольный? Данные А=90; А=100, А=60.
Дан больший угол треугольника А в градусах. Определить, верно ли, что треугольник тупоугольный? Данные А=90; А=100, А=60.
Ввести число А. Определить, верно ли, что оно больше числа 50.
Данные А=90; А=50, А= - 10.
Ввести число А. Определить, верно ли, что оно меньше числа 100.
Данные А=190; А=100, А= - 10.
Ввести число А. Определить, верно ли, что оно равно числу 27.
Данные А=90; А=27, А= - 10.
еще рефераты
Еще работы по разное