Операции

Var

Var

Var

Type

Var

Type

Var

Type

имя_типа=тип_значений;

идентификатор: имя_типа;

Пример задания перечисляемого типа:

Colors=(black, red, white);

Var Col:colors;

Переменные перечисляемого типа можно объявлять без предварительного описания типа:

Col:(black, white, green);


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

минимальное_значение .. максимальное_значение

Пример:

Digit=’0’..’9’;

Dig2=48..57;

D1:Digit;

D2:Dig2;

Тип-диапазон можно непосредственно указывать при объявлении переменной. Пример:

Date:1..31;

Month:1..12;

 

Вещественные типы. Значения вещественных типов определяют произвольное вещественное число с некоторой конечной точностью, зависящей от внутреннего формата числа.

Тип Название Длина, байт Кол-во цифр мантисы Диапазон десятичного порядка
Real Вещественный 11..12 -39..38
Single С одинарной точностью 7..8 -45..38
Double С двойной точностью 15..16 -324..308
Extended С повышенной точностью 19..20 -4932..4932
Comp Сложный 10..20 -2*1063+1.. 2*1063-1

Пример:

Min:Real;

 

Операции делятся на 4 категорий согласно приоритету:

1) унарный минус, not — логическое отрицание; @ – получение адреса операнда;

2) операции группы умножения — * (умножить), mod (деление по модулю), div (целочисленное деление), / (деление), and (логическое "и"), shl – сдвиг влево, shr – сдвиг вправо;

3) операции группы сложения: + (сложение), – (вычитание), or (логическое "или"), xor (исключающее "или");

4) операции отношения: = (равно), <> (не равно), > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), in (проверка принадлежности множеству).

Пример:

F:=2*sin(x)+3/sqrt(1+x*x);