Основы программирования на C++, PASCAL
3.5. Арифметические операции, функции, выражения. Арифметический оператор присваивания
К арифметическим типам данных относятся группы вещественных и целых типов. К ним применимы арифметические операции и операции отношений.
Операции над данными бывают унарными (применимые к одному операнду) и бинарными (применимые к двум операндам). Унарная арифметическая операция одна. Это операция изменения знака. Ее формат:
![](osnovi.files/image051.png)
Бинарные арифметические операции стандартного Паскаля описаны в табл. 3.3. В ней I обозначает целые типы, R — вещественные типы.
Таблица 3.3
![](osnovi.files/image052.png)
К арифметическим величинам могут быть применены стандартные функции Паскаля. Структура обращения к функции представлена на рис. 16.
![](osnovi.files/image053.png)
Функция выступает как операнд в выражении. Например, в следующем операторе присваивания
![](osnovi.files/image054.png)
операндами являются три функции: sin, ln, cos. Их запись такая же, как в математике. Аргументы называются фактическими параметрами и являются в общем случае выражениями арифметического типа. Аргументы записываются в круглых скобках. Результат вычисления функции — величина соответствующего типа.
Табл. 3.4 содержит описания математических стандартных функций Турбо Паскаля.
Таблица 3.4
![](osnovi.files/image055.png)
Арифметическое выражение задает порядок выполнения действий над числовыми величинами. Арифметические выражения содержат арифметические операции, функции, операнды, круглые скобки. Одна константа или одна переменная — простейшая форма арифметического выражения.
Например, запишем по правилам Паскаля следующее математическое выражение:
![](osnovi.files/image056.png)
На Паскале это выглядит так:
![](osnovi.files/image057.png)
Для того чтобы правильно записывать арифметические выражения, нужно соблюдать следующие правила:
1. Все символы пишутся в строчку на одном уровне. Проставляются все знаки операций (нельзя пропускать знак умножения).
2. Не допускаются два следующих подряд знака операций (нельзя A+-B; можно А+(-B)).
3. Операции с более высоким приоритетом выполняются раньше операций с меньшим приоритетом. Порядок убывания приоритетов:
• вычисление функции;
• унарная операция смены знака (-);
• *, /, div, mod;
• +, -.
4. Несколько записанных подряд операций одинакового приоритета выполняются последовательно слева направо.
5. Часть выражения, заключенная в скобки, вычисляется в первую очередь. (Например, (A+B) * (C—D) — умножение производится после сложения и вычитания.)
![](arrow/2.png)
![](arrow/1.png)