Выражения
В операторах широко используются выражения. Выражение – это совокупность переменных, констант и функций, соединенных знаками операций.
Так как операций в выражении может быть несколько, то все эти операции разбиты по приоритетам, причем операции, имеющие более высокий приоритет, выполняются в первую очередь.
Приоритет | Операция |
1 (высший) | ( ) – выражение в скобках |
Унарные операции: NOT – логическая инверсия, - «минус» – смена знака, @ – взятие адреса. | |
* – арифметическое умножение, / – арифметическое деление, DIV – целочисленное деление, MOD – остаток от целочисленного деления, AND – логическое умножение. | |
+ – арифметическое сложение, - – арифметическое вычитание, OR – логическое сложение, XOR – логическое сложение по модулю 2. | |
5 (низший) | IN – проверка принадлежности множеству. Операции отношения: > – больше, < – меньше, = – равно, <> – не равно, >= – больше или равно, <= – меньше или равно. |
То есть, если необходимо, например, записать выражение , то запись вида a+b/c+d будет неправильна. С помощью скобок необходимо расставить приоритеты выполнения операций: (a+b)/(c+d).
При вычислении выражений часто приходится использовать алгебраические, тригонометрические и другие функции. Язык Паскаль содержит относительно небольшое число стандартных функций, делящихся по типам используемых операндов и получаемых результатов, а так же функции преобразования.
Следующие математические функции могут работать как с целым, так и с вещественным аргументом, тип получаемого результата соответствует типу аргумента:
Abs(x) – модуль числа х;
Sqr(x) – квадрат.
Функции с вещественным результатом:
Sin(x) – синус;
Cos(x) – косинус;
Arctan(x) – арктангенс;
Exp(x) – экспонента;
Ln(x) – натуральный логарифм;
Sqrt(x) – корень квадратный;
Frac(x) – дробная часть вещественного числа;
Int(x) – целая часть вещественного числа.
Функции с целым результатом:
Random(x) – случайное число от 0 до х;
Trunc(x) – округление с отбрасыванием дробной части;
Round(x) – округление по правилам арифметики.
Odd(x) с целым аргументом дает логический результат: True, если х нечетно.
Для работы с символьными значениями используются функции:
Chr(x) – возвращает символ, соответствующий ASCII-коду числа х;
Ord(x) – возвращает число, соответствующее символу х в ASCII-таблице;
UpCase(x) – преобразует латинские строчные буквы в прописные.
Функции для дискретных типов:
Ord(x) – порядковый номер числа х;
Pred(x) – предыдущий элемент;
Succ(x) – следующий элемент.