Глава 4. Операторы языка Паскаль Выражения В операторах широко используются выражения.
Выражение – это совокупность переменных, констант и функций, соединенных знаками операций.
Так как операций в выражении может быть несколько, то все эти операции разбиты по приоритетам (табл. 4.1), причем операции, имеющие более высокий приоритет, выполняются в первую очередь.
Таблица 4.1. Распределение операций по приоритетам
Приоритет
| Операция
| 1 (высший)
| ( ) – выражение в скобках
| 2
| Унарные операции:
NOT – логическая инверсия,
- «минус» – смена знака,
@ – взятие адреса.
| 3
| * – арифметическое умножение,
/ – арифметическое деление,
DIV – целочисленное деление,
MOD – остаток от целочисленного деления,
AND – логическое умножение.
| 4
| + – арифметическое сложение,
- – арифметическое вычитание,
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) – следующий элемент.
§4.1. Оператор присваивания Этот оператор является одним из простейших, и наиболее используемым оператором языка. Он предназначен для определения нового значения переменной или значения, возвращаемого функцией. Общий вид оператора:
<имя> := <выражение>
Частным случаем выражения может быть константа или переменная.
Тип имени и выражения должны совпадать. Допускается только одно исключение: выражение целого типа, а переменная – вещественного.
При выполнении оператора вычисляется выражение, и полученный результат записывается в ячейку памяти, выделенную под переменную. Присваивание допускается для всех простых типов, для структурированных типов присваивание выполняется поэлементно. Нельзя использовать присваивание для файловых типов.
|