Результат выполнения логической операции для операндов любого типа будет логического типа, т.е. принимает значение истина или ложь.
Логические операции. Логические операции применяются к величинам логического типа, результат операции – тоже логического типа. NOT (НЕ) { отрицание } AND (И) { конъюнкция, логическое умножение, пересечение} OR (ИЛИ) {дизъюнкция, Таблицы истинности для логических операций:
1. Операции NOT(x): 2. Операции AND(x) и OR(x):
Приоритет логических операций: NOT, AND, OR Функции преобразования типа CHR(X) – возвращает символ, соответствующий целому числу. ORD(X) – возвращает код, соответствующий символу. ROUND(X) - округление вещественного числа до ближайшего целого(real integer). TRUNC(X) - получение целой части вещественного числа(real integer(Longint)). Функции для величин порядкового Odd(x) – проверка величины х на нечетность (результат равен TRUE если х нечетно); Pred(x) – возвращает предшествующее значение того же типа, что и аргумент; Succ(x) – возвращает последующее значение того же типа, что и аргумент; Пример 1: const a0=5; a1='b'; a2=true; a3=99; a4=100; a5=3.45; Begin {возвращает код, соответствующий символу} Writeln(ord(a0),ord(a1),ord(a2)); 5 98 1 {возвращает соответствующий символ} Writeln(pred(a0),pred(a1),pred(a2)); A false Writeln(succ(a0),succ(a1),succ(a2)); C false {возвращает символ, соответствующий целому числу} Writeln(chr(a3),chr(a4)); С d {округление вещественного числа до ближайшего целого} Writeln(round(3.6),round(-3.6),round(3.5)); 4 -4 4 {целая часть вещественного числа } Writeln(trunc(3.6),trunc(-3.6),trunc(3.5)); 3 -3 3 {целая и дробная части вещественного числа } Writeln(int(a5),frac(a5)); 3. 0.45 End. Пример 2: Определить целочисленное число или нет? 1)если frac(x)=0, то число X целое; 2)если x-round(x)=0, то число X целое; 3)если x-trunc(x)=0, то число X целое; 4)если x-int(x)=0, то число X целое; Приоритет действий при вычислении
ПРИМЕРЫ: Определите результат вычисления выражений: 1). x:=5; y:=2; u:=(x-y>4) AND (x+2*y<=10); False(ложь)) 2). x:=2; y:=5; u:=(x+y>0) OR NOT(x-y<0) OR (x*y<=8); True(истина)) 3). x:=3; y:= -6; u:=NOT(x-5>=y) AND (x+y>20) AND (x-y=9); False(ложь))
|