Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PAS1~1.doc
Скачиваний:
2
Добавлен:
07.11.2018
Размер:
283.65 Кб
Скачать

3.1.2. Вещественный тип.

Описывается с помощью ключевых слов REAL, SINGLE,DOUBLE, EXTENDED, COMP. Данные этого типа могут участвовать в арифметических операциях, для них существует ряд стандартных функций ABS ,SQRT ,EXP ,LN ,SIN, COS, ARCTAN.

Существует единственное соглашение для использования вещественного и целочисленного типов. В любом выражении вместо вещественного типа может быть использован целочисленный, никаких преобразований при этом не требуется. Для этого типа данных существуют функции преобразования: TRUNC(x)- ЦЕЛАЯ ЧАСТЬ X и ROUND(x) -БЛИЖАЙШЕЕ ЧИСЛО X.

Пример: Результаты использования функций преобразования.

TRUNC (5.8) = 5 ROUND (6.2)= 6

TRUNC (-5.2)= 5 ROUND (7.8)= 8

3.1.3. Символьный тип.

Переменные символьного типа CHAR имеют длину в один символ. Упорядоченность символов соответствует кодам ASCII. Переменные типа CHAR могут участвовать в операциях сравнения - та переменная больше , чей код больше. Символы заключенные в кавычки, обозначают константы типа CHAR , например,"А", "0".

Две стандартные функции позволяют отображать множество символов на подмножестве натуральных чисел и наоборот. Эти функции называются функциями преобразования:

ORD(c) -код символа С из набора ASCII символов.

CHR(I) -символ с кодом I.

3.1.4.Логический тип.

Логический тип (тип BOOLEAN ) указывает диапазон логических значений, который содержит два элемента: TRUE (истина) и FALSE (ложь): TYPE BOOLEAN = (FALSE,TRUE )

Над аргументами этого типа определены следующие стандартные функции:

AND -конъюнкция ( И )

OR -дизъюнкция ( ИЛИ )

NOT -отрицание ( НЕ ).

Все операторы отношения =,< > ,<= ,< ,>= ,> дают результаты типа BOOLEAN , например ,выражение X=Y имеет значение TRUE ,если X равен Y и FALSE в противном случае.

3.1.5.Перечисляемый тип.

Перечисляемый тип определяется как упорядоченный набор идентификаторов, заданный их перечислением. Для любого перечисляемого типа Т ,определенного записью TYPE T=(W1,W2,...Wn), где Т индентификатор типа ; W1, W2, ... Wn -константные идентификаторы, постулируются следующие аксиомы:

1.Wi /= Wj ,если i=j (различимость);

2.Wi < Wj ,если i<j (упорядоченность);

3.Значения типа T могут быть только W1, W2, ... Wn.

Операции сравнения применимы для всех перечисляемых типов, если обе компоненты отношения имеют одинаковый тип. Наличие упорядоченности позволяет ввести функции получения следующего и предыдущего элемента :

SUCC(W(i)) = W(i+1) для i=1,2,3,...n-1

PRED(W(i)) = W(i-1) для i=1,2,3,...n-1

По определению ORD(W(i))= 0 и ORD(W(i))=ORD(PRED(W(i))+1

3.1.6. Тип-диапазон

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

В качестве константы указывается некоторое значение скалярного типа , причем это может быть число или символ, а также идентификатор константы перечисляемого типа.

GOD_ROGD = 1960..1990;

DAY =MONDAY..FRIDAY;

При работе с переменными этого типа, компилятор проверяет входят ли значения в заданный тип. При описании переменных верхняя граница отрезка обязательно должна быть меньше нижней границы.

Пример: Описание переменных типа диапазон.

TYPE

DAY=(MONDAY,TUESDAY,WENDESDAY,THURSDAY,FRIDAY,SATURDAY,

SUNDAY);

WORKDAYS = MONDAY..FRIDAY;

HOUR = 1..60; MONTH = 1..31;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]