Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КОМП. НАУКИ_1сем.doc
Скачиваний:
6
Добавлен:
05.11.2018
Размер:
902.14 Кб
Скачать
    1. Перечисляемые типы

Перечисляемые типы – это пользовательские типы, состоящие из указанных пользователем значений.

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

Type Svetofor=(Red, Yellow, Green);

WeekDay =(Mon, Tue, Wed, Thu, Fri, Sat, Sun);

Использование одного и того же идентификатора в разных типах считается ошибкой.

Переменная перечисляемого типа может принимать значение любой из констант этого типа.

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

    1. Интервальные типы

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

Type Digit = 0..9; {Интервал целых чисел от 0 до 9; базовый тип - целые}

DigitSim = ’0’ .. ’9’; {Интервал цифр от ’0’ до ’9’; базовый тип - символы}

Значения переменных интервального типа должны принадлежать указанному диапазону. Операции для интервального типа те же, что и для базового типа.

Именно интервальные типы чаще всего используют в качестве индексов массивов.

    1. Порядковые типы

К порядковым типам относятся целые, логические, символьные, перечисляемые и интервальные типы.

Порядковые типы можно использовать в операторах for и case, в качестве индексов массивов, для задания элементов множеств и интервальных типов.

Множество допустимых значений любого порядкового типа – это упорядоченная последовательность, каждый элемент которой имеет свой порядковый номер, представляемый целым числом. Первое значение любого порядкового типа (кроме целых типов) имеет значение 0, следующее 1 и т.д. Порядковым номером значений целых типов является само это значение, т.е. Ord(n) = n.

Все операции, выполняемые над порядковыми типами, выполняются с их кодами

Для порядковых типов определены следующие функции:

1

Ord(n)

Возвращает порядковый номер значения n

2

Pred(n)

Возвращает значение, предшествующее значению n, т.е. значение с номером Ord(n)-1;

Ord(Pred(n))=Ord(n)-1;

3

Succ(n)

Возвращает следующее значение, которое соответствует порядковому номеру Ord(n)+1;

Ord(Succ(n))=Ord(n)+1

4

Inc(n)

Увеличивает значение n на 1 для целых типов, т.е. n:=n+1

5

Dec(n)

Уменьшает значение n на 1 для целых типов, т.е. n:=n‑1

6

Low(X)

Возвращает младшее значение в диапазоне типа; здесь X – имя типа или имя переменной.

Например, Low(integer) вернет значение -2 147 483 648

7

High(X)

Возвращает старшее значение в диапазоне типа; здесь X – имя типа или имя переменной.

Например, High(integer) вернет значение 2 147 483 647

Для логического типа boolean справедливо:

Ord(false)=0, Ord(true)=1, Succ(false)=true, Pred(true)=false;