Перелічуваний тип даних
Мова Паскаль дозволяє програмісту створювати власні типи даних. Один із них називається перелічуваний тип. Він задається програмістом шляхом переліку в круглих дужках усіх припустимих значень типу.
(значенння1, значенння2,..., значенняN) Значення не можуть бути нічим, крім імен. Їх можна привласнювати і порівнювати, але не можна вводити і виводити операторами READ і WRITE. З двох значень більшим є те, що в описі типу розташовано правіше.
Робота з перелічувальним типом даних.
Program seas;
Type
season=(winter, spring, summer, autumn);
Var
X, Y: Season;
Type
season=(winter, spring, summer, autumn);
Var
X, Y: Season;
Begin
X:=winter;
Y:=summer;
If X>Y Then Write ('Y');
X:=Y
End.
Інтервальний тип даних
Інтервальний тип даних теж "саморобний". Він визначається як інтервал значень раніше визначеного (базового) типу. Задається інтервал своїми крайніми значеннями.
значення1 .. значення2
Базовим #888888;">Begin
X:=winter;
Y:=summer;
If X>Y Then Write ('Y');
X:=Y
End.
Інтервальний тип даних
Інтервальний тип даних теж "саморобний". Він визначається як інтервал значень раніше визначеного (базового) типу. Задається інтервал своїми крайніми значеннями.
значення1 .. значення2
Базовим може бути любий простий тип даних, крім дійсного. Наприклад:
Type
Day=1..31;
Month=1..12;
Letter='A'..'Z'
Саме інтервальний тип дотепер застосовувався нами для індексації масиву.
Порядкові типи даних
Порядковими називаються всі прості типи, значення яких можна розташувати в зростаючому порядку. Типи INTEGER, CHAR, BOOLEAN, перечислювальні та інтервальні є порядковими. Типи REAL, ARRAY порядков style="color: #888888;">End.
Інтервальний тип даних
Інтервальний тип даних теж "саморобний". Він визначається як інтервал значень раніше визначеного (базового) типу. Задається інтервал своїми крайніми значеннями.
значення1 .. значення2
Базовим може бути любий простий тип даних, крім дійсного. Наприклад:
Type
Day=1..31;
Month=1..12;
Letter='A'..'Z'
Саме інтервальний тип дотепер застосовувався нами для індексації масиву.
Порядкові типи даних
Порядковими називаються всі прості типи, значення яких можна розташувати в зростаючому порядку. Типи INTEGER, CHAR, BOOLEAN, перечислювальні та інтервальні є порядковими. Типи REAL, ARRAY порядковими не являються.
На будь-яких порядкових типах визначені функції:
PRED(X) повертає значення, що передує X. До найменшого значення не застосовна.
SUCC(X) повертає значення, що слідує за X. До найбільшого значення не застосовна.
ORD(X) повертає порядковий номер аргументу X. Значення порядкового типу нумеруються числами 0, 1, 2, ... починаючи з найменшого. Виняток складає тип INTEGER, для котрого ORD(X)=X.
Тепер можна розширити визначення масиву (див. розділ 6.1) реченням: "Типом індексу масиву може бути любий порядковий тип даних". От приклади можливих описів:
Array [(Spring, Summer, Autumn, Winter)] Of Real;
Array [Char] Of Integer;
Array ['A'..'Z'] Of Boolean. |