Выражения в Pascal: арифметические, логические

Выражения представляют собой конструкцию языка, которая содержит в себе данные, операции и имеется строгий порядок выполнения этих операций. Выражения всегда возвращают какое-либо значение.

Операнды — это данные, над которыми производятся действия. Операндами могут быть переменные, константы, переменные массивов и другие элементы.

1. Арифметические операции

Арифметические операции выполняются над целыми и действительными числами. Результатом выполнения арифметического выражения является, соответственно, целое или действительное число.

Знак Операция Операции Типы операндов Тип результата Пример
+ Сложение Integer, Real Integer, Real x+y
Вычитание Integer, Real Integer, Real x-y
* Умножение Integer, Real Integer, Real x*y
/ Деление Integer, Real Real x/y
div Целочисленное деление Integer Integer X div Y
mod Целочисленный остаток от деления Integer Integer X mod Y

Операций div и mod:
• результатом целочисленного деления x div Y будет результат деления x на Y, округленный в сторону нуля до ближайшего целого числа. Например, результатом выражения 4 div 2 будет 2, а результатом выражения 17 div 4 будет 4;
• результатом операции mod будет остаток от целочисленного деления операндов. Таким образом, выражение x mod у эквивалентно выражению x-(x div Y) *Y. Например, результатом выражения 4 mod 2 будет о, а результатом выражения 9 mod 4 будет 1.

Пример

Var a, b, c, d: integer;
Begin a: = 7; b: = 5; c: = -10;
d: = a+b; d: = -d; end;

2. Логические операции

Логические выражения — это выражения, в которых содержатся:
1. логические константы True И (ИЛИ) False;
2. логические переменные и (или) константы типа Boolean;
3. операции отношения;
4. логические операции;
5. скобки.

В результате выполнения логической операции получается логическое значение True или False.

Знак Операция Операции Типы операндов Тип результата Пример
not Отрицание Boolean Boolean not(C in MySet)
and Конъюнкция (логическое И) Boolean Boolean A and В
or Дизъюнкция (логическое ИЛИ) Boolean Boolean A or В
xor Исключающая дизъюнкция (исключающие ИЛИ) Boolean Boolean A xor В

Для того чтобы был четкий порядок выполнения операции, в языке Delphi имеется понятие приоритет.

Приоритет определяет старшинство операций, служит для установления порядка выполнения операций. Операции с более высоким уровнем приоритета выполняются раньше остальных.

По приоритету все операции разделяются на четыре уровня:

По первый (наивысший) уровень приоритета. К нему относятся операции and и not;
• второй уровень приоритета — операции *, /, div, mod, and, shl, shr и as;
• третий уровень приоритета — операции +, -, or и хоr;
• четвертый (самый низкий) уровень приоритета — операции =, о, <, >,<=, >=, in и is.

Если подряд идут несколько операций с одинаковым приоритетом, то операции выполняются слева направо.


Комментарии запрещены.





Статистика

Рейтинг@Mail.ru