
- •Визначувані типи
- •Опис визначуваного типу
- •Класифікація відомих визначуваних типів
- •Використання визначуваного типу
- •Підтипи
- •Перелічувані типи. 1
- •Перелічувані типи. 2
- •Об'єднаний тип
- •Складений тип
- •Рядковий тип
- •Представлення рядків
- •Представлення рядкового літерала в мові Pascal
- •Операції над рядковими знченнямив мові Pascal
- •Представлення рядкового літерала в мові с
- •Індексовані типи
- •Устрій одновимірних мультизначень
- •Устрій двовимірних мультизначень
- •Опис устрою мультизначення індексованого типу
- •Устрій паспорту індексованого типу
- •Приклади опису устрою індексованого типу. 1
- •Приклади опису устрою індексованого типу. 2
- •Індексатор
- •Основні властивості індексованих типів
- •Опис об'єктів індексованого типу. 1
- •Опис об'єктів індексованого типу. 2
- •Ініціалізація об'єктів індексованого типу
- •Ініціалізація при створенні об'єкту
- •Ініціалізація об'єкту оператором привласнення
- •Особливості індексованого типу в мові с.1
- •Особливості індексованого типу в мові с.2
- •Іменовані (комбіновані) типи
- •Механізм обробки значень іменованого типу
- •Відмінності в застосуванні іменованого та індексованого типів
- •Використання типізованих вказівних змінних іменованого типу
- •Спеціальний випадок використання типізованих вказівних змінних іменованого типу
- •Структури даних. Визначення
- •Структури даних. Визначення
- •Лінійні структури даних
- •Лінійний список
- •Лінійний список
- •Підходи до реалізації списку
- •Моделювання лінійного списку. 1
- •Векторне представлення лінійного списку. 1
- •Векторне представлення лінійного списку. 2
- •Векторне представлення стеку
- •Векторне представлення черги
- •Моделювання лінійного списку. 2
- •Зв’язане представлення черги. 2
- •Нелінійні структури даних
- •Представлення дерев
- •Устрій дерева як структури даних
- •Види дерев як структур даних
- •Моделювання дерева. Приклад 2
Опис устрою мультизначення індексованого типу
Оскільки тип компонентів мультизначення однаковий, то для доступу до них достатньо розмістити їх у деякому порядку, поставивши у відповідність цьому порядку деякий дискретний діапазон. Якщо мультизначення одновимірне, то достатньо одного дискретного діапазону, інакше – декілька, стільки, скільки розмірностей у мультизначення. Кожний дискретний діапазон називається межевою парою, індексом або мультидіапазоном. Перелік описів дискретних діапазонів утворює дескриптор індексованого типу. Дискретний діапазон у дескрипторі подається підтипом дискретного типу.
Устрій паспорту індексованого типу
Зазвичай синтаксично паспорт розміщується в опису типу серед символів ‘[‘ і ‘]’ або ‘(‘ і ‘ )’, а дискретний діапазон зазначається через кому:
[1..m, 1..n] integer,
де 1..m – мережеві пари (дискретні діапазони);
[1..m, 1..n] – дескриптор мультизначення;
іnteger – тип компонентів мультизначення.
Зображення мультизначень виконується зазначенням зображень значень, що утворюють мультизначення. Кожний компонент у зображеному мультизначенні займає місце згідно з паспортом індексованого типу.
Приклади опису устрою індексованого типу. 1
Приклад 1.
Одновимірне значення компоненту
[1..5]
integer
опис індексованого типу
дескриптор індикатор
типу компонентів
мультизначення
1..5 – межева пара.
Приклади опису устрою індексованого типу. 2
Приклад 2.
Двовимірне значення компоненту
[1..2, 1..3] real опис індексованого типу
дескриптор індикатор
типу компонентів
мультизначення
1..2, 1..3 – межева пара.
Індексатор
Для вибору підзначення з мультизначення використовують індексатори.
Індексатор – це конструкція, що складається з індексних позицій, які, у свою чергу є зображеннями значень індексу (межевій парі). Індексатор зазвичай записується в символах «(« і «)» або «[“ і “]”.Наприклад, для типів, що описані в прикладах індексатори можуть мати вигляд відповідно [3], або [1,1].
Як правило, індексатор використовується для доступу до підзначення, що складається з одного компонента. Такий доступ називається індексацією.
Індексація – це спосіб вказати підзначення за індексом (номером) шляхом опису індексатора.
Основні властивості індексованих типів
значення індексованого типу характеризуються:
кількістю індексів межевих пар (розмірність значення);
типом і позицією кожного індексу (позиція суттєва);
верхніми та нижніми значеннями межевих пар;
типом компонентів (тип однаковий)
Опис об'єктів індексованого типу. 1
Pascal:
type
Mas = array [1..4, 1..4] of real;
MasOfMas = array [char] of Mas;
var
m_A : Mas;
m_B : MasOfMas;
// m_A [1,1] : 1.1
// m_B [‘A’] : ((1.1, 0.0), (0.0, 0.0))
// m_B [‘A’][1,1]: 1.1