Знак_операции Операнд
Операции
Выражения
Переменные
Переменная представляет собой поименованную область памяти ЭВМ определённого размера, используемую для хранения данных определённого типа.
Переменные, описанные в основном блоке (программе), называются глобальными. Переменные, описанные во вложенном блоке (процедуре или функции), называются локальными.
Примечание: размер памяти, занимаемый всеми объявленными переменными, не должен превышать 65520 байт.
Синтаксис описания переменных (раздел var):
Ид_переменной1, Ид_переменной2...: описание_типа|Ид_типа;...
Пример:
var
X,Y,Z: real;
I,J,K: integer;
Digit: 0..9;
Выражение – конструкция, предназначенная для выполнения вычислений. Выражение состоит из последовательности операций; выполнение этой последовательности операций приводит к появлению единственного значения, имеющего определённый тип.
Операция – определённое действие, производимое над операндами, в результате выполнения которого появляется единственное значение, имеющее определённый тип.
|
|
Операции в языке программирования Pascal характеризуются:
– количеством операндов;
– типами операндов и результата;
– приоритетом.
Унарными называются операции, производимые над одним операндом.
Синтаксис использования унарной операции:
Пример:
- 3.44, not false.
Бинарными называют операции, производимые над двумя операндами.
Синтаксис использования бинарной операции:
Пример:
3 + 55, x1 > 2, 5 mod 2.
Приоритет – целое число от 1 (высший приоритет) до 4 (низший приоритет), определяющее очерёдность выполнения операции в выражении.
Операции с высоким приоритетом выполняются раньше, чем операции, имеющие более низкий приоритет. Операции с одинаковым приоритетом при вычислении выражения выполняются в порядке слева-направо.
Выражение, заключённое в круглые скобки, имеет наивысший приоритет, т. е. вычисляется в первую очередь.
В таблице 3 представлены некоторые операции языка.
Таблица 3 – Операции языка
Операция | Типы операндов | Тип результата | Приоритет | Пояснения | |||||||
+ | ц | ц | ц | ||||||||
в | в | в | |||||||||
c | c | c | объединение строк (’стр’+’.1’ = ’стр.1’) | ||||||||
- | ц | ц | ц | ||||||||
в | в | в | |||||||||
* | ц | ц | ц | ||||||||
в | в | в | |||||||||
/ | в | в | в | ||||||||
div | ц | ц | ц | деление нацело (5 div 2 = 2) | |||||||
mod | ц | ц | ц | остаток от деления нацело (5 mod 2 = 1) | |||||||
<> | * | л | |||||||||
> | * | л | |||||||||
< | * | л | |||||||||
>= | * | л | |||||||||
<= | * | л | |||||||||
not | л | - | л | отрицание
(not(2>1)=false) |
Окончание таблицы 3
Операция | Типы операндов | Тип результата | Приоритет | Пояснения | ||||||||||||||||||
and | л | л | л | Логическое «И»
((2>1) and (2<4) = true,
(2>1) and (2<0) = false) | ||||||||||||||||||
or | л | л | л | Логическое «ИЛИ»
((2>1) or (2<0) = true, (2<1) or (2<0) = false) | ||||||||||||||||||
= | * | л |
Обозначения в таблице: ц – целочисленный тип, в – вещественный тип,
л – логический тип, с – строковый тип.
Примечание:
* - любой совместимый тип.
Пример:
Определим порядок выполнения операций в выражении:
2.5+10/(2-1)-2*3>5 mod 2
В первую очередь будет вычислено выражение в круглых скобках:
2.5+10/(2-1)-2*3>5 mod 2
2.5+10/1-2*3>5 mod 2
В полученном выражении операции «/», «*» и «mod» имеют одинаковый приоритет, а значит, выполняются в порядке слева-направо:
2.5+ 10/1 -2*3>5 mod 2
2.5+1.0000000000Е+01- 2*3 >5 mod 2
2.5+1.0000000000Е+01-6> 5 mod 2
2.5+1.0000000000Е+01-6>1
Следует обратить внимание на то, что после выполнения операции «10/1» над целыми константами появилось вещественное значение 1.0000000000Е+01 (см. тип результата операции /, табл. 3).
В полученном выражении операции «+», «-» имеют одинаковый приоритет, а значит, выполняются в порядке слева-направо:
2.5+1.0000000000Е+01 -6>1
1.2500000000Е+01-6 >1
Последней будет выполнена операция сравнения, имеющая 4-й приоритет.
6.5000000000Е+00>1
Результат вычисления выражения:
true.