Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_учебное пособие_.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
2.11 Mб
Скачать

Раздел описания типов

Тип данных – это множество допустимых значении данных, а также совокупность операций над ними.

В Turbo Pascal можно выделить следующие группы типов:

- простые типы;

- структурированные типы;

- указатели;

- процедурные типы;

- объекты.

Простые типы, используемые в языке, разделяются на стандартные (предопределенные) и определяемые программистом.

Стандартный тип, не требующий предварительного определения, включает:

  • целые типы - Integer

  • вещественные типы - Real

  • логические типы - Boolean

  • символьный тип –Char

  • тип-строка -String

  • ASCIIZ-строка - PChar

  • текстовый файл - Text

  • тип-указа­тель – Pointer.

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

Раздел объявления типов начинается зарезервированным словом type, после которого определяются вводимые типы. Определение каждого нового типа начи­нается с идентификатора типа. За ним следует знак равенства, а далее - само оп­ределение, завершающееся точкой с запятой:

type

<имя типа 1> = <определение типа 1>;

<имя типа 2> = «определение типа 2>;

<имя типа N> = «определение типа N>;

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

Простой тип определяет упорядоченное множество значений параметра. В Turbo Pascal имеются следующие группы простых типов:

  • целые типы

  • перечисляемый тип

  • логический тип

  • тип-диапазон

  • символьный тип

  • вещественные типы

Все простые типы, за исключением вещественных, называются порядковыми типами. Для величин порядковых типов определены стандартные процедуры и функции: Dec, Inc, Ord, Pred, Succ.

Целый тип используется для описания целых чисел. В отличие от языка Паскаль, где определен единственный целый тип Integer, в Turbo Pascal имеется пять стандартных типов целых чисел, характеристики которых в приведены в таблице 4.

Таблица 7.

Целые типы данных

Название

типа

Идентифика

тор

Диапазон представления чисел

Формат

Размер в

байтах

Короткое целое со знаком

Shortint

-128..127

знаковый

1

Целое

со знаком

Integer

-32768..32767

знаковый

2

Длинное целое со знаком

Longint

-2147483648..

2147483647

знаковый

4

Короткое целое без знака

Byte

0..255

беззнако-

вый

1

Целое

без знака

Word

0..65­535

беззнако-

вый

2

Стандартный логический тип Boolean (размер – 1 байт) представляет собой тип данных, любой элемент которого может принимать лишь два значения: True и False. При этом справедливы следующие условия:

False < True Succ (False) = True

Ord (False) =0 Pred (True) > False

Ord(True) = 1

В Turbo Pascal 7.0 добавлено еще три логических типа ByteBool (размер - 1 байт), WordBool (размер - 2 байта) и LongBool (размер - 4 байта). Они введены для унификации с другими языками программирования и со средой Windows. Отличие их от стандартного типа Boolean заключается в фактической величине параметра этого типа, соответствующей значению True. Для вех логических типов значению False соответствует число 0, записанное в соответствующее количество байтов. Значению же True для типа Boolean соответствует число 1, записанное в его байт, а для других типов значению True соответствует любое число, отличное от нуля (хотя функция Ord в этом случае дает значение 1).

Стандартный символьный тип Char определяет полный набор ASCII-символов. Функция Ord от величины типа Char дает код соответствующего символа. Сравниваются величины символьного типа по своим кодам.

Перечисляемый тип не является стандартным и определяется набором иденти­фикаторов, с которыми могут совпадать значения параметра. Список идентифи­каторов указывается в круглых скобках, идентификаторы разделяются запятыми:

Type

<имя типа> = (идентификатор1, идентификатор2, ... , идентификаторN);

Важно, в каком порядке перечислены идентификаторы при определении типа т. к. первому идентификатору присваивается порядковый номер 0, второму 1;

Один и тот же идентификатор можно использовать в определении только одного перечисляемого типа. Функция Ord от величины перечисляемого типа дает порядковый номер ее значения.

Пример. Описание перечисляемого типа.

Type

Operat = (Plus, Minus, Mult, Divide);

Логический тип является частным случаем перечисляемого, типа:

Тype Boolean = (False, True);

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

Type

<имя типа> = <минимальное значение> .. <максимальное значение>;

Минимальное значение при определении такого типа не должно быть больше максимального.

Пример. Определение типов-диапазонов.

type

Dozen = l..1999; {числа от 1 до 1999}

AddSub =Plus .. Minus; {операции слоения и вычитания}

Вещественные типы используются для описания действительных чисел. В Turbo Pascal имеется пять стандартных вещественных типов: Rеа1, Single, Double, Extended, Соmр. Характеристики этих типов представлены в таблице 5.

Таблица 8.

Вещественные типы данных

Название типа

Идентификатор

Диапазон представления чисел

Значащие

цифры

мантиссы

Размер

памяти

в

байтах

Вещественное одинарной точности

Singl

7..8

4

Вещественное

Real

11..12

6

Вещественное

двойной точности

Double

15..16

8

Вещественное повышенной точности

Extended

19..20

10

Целое в формате

вещественного

Comp

)

19..20

10

Тип Соmр фактически является типом целых чисел увеличенного диапазона, однако порядковым не считается.