Програмування масивів.
1. Поняття масиву.
До цих під для опрацювання даних використовувались скалярні типи. Однак при обробці великих наборів даних використання скалярних величин стає громіздким. Тому для вирішення таких завдань використовуються структуровані величини. Одним зі структурованих типів є регулярний тип даних, або масив.
Масив - це впорядкований набір однотипових елементів. Впорядкованість означає, що елементи масиву розташовані в певному порядку, тобто, проіндексовані. Одно типовість означає належність елементів масиву одному типу даних. Це дозволяє використовувати опрацювання масивів за допомогою операторів циклу. Розглянемо опрацювання масивів на прикладі одновимірного масиву.
Масив визначається наступним чином:
ім’я типу = array[тип індексу] of тип компонентів
Визначення масиву починається зарезервованим словом array (масив), за яким слідує тип індексу, укладений у квадратні дужки. Після типу індексу іде зарезервоване слово of, за яким указується тип компонентів масиву. В ролі типу індексу може виступати будь-який скалярний обмежений тип, окрім real та integer. Разом з тим типом індексу може виступати діапазон типу integer. В ролі типу компонентів може виступати довільний тип, крім файлового. Розглянемо спочатку одновимірні масиви, тобто масиви, в яких типом компонентів є скалярний тип даних.
ПРИКЛАД:
type
massiv = array[1..10] of integer;
period = array[14..20] of real;
letters = array[char] of boolean;
Змінні структурованого типу вводяться звичайним шляхом в розділі опису змінних:
var
a:massiv;
t:period;
k:letters;
При цьому існує також можливість використання структурованих змінних безіменних типів:
var
b : array[1..10] of integer;
f : array[14..20] of real;
s : array[char] of boolean;
Однак при цьому змінні a і b несумісні (тобто мають різний тип), хоча фактично являють собою однакові масиви з однаковим типом індексу та типом компонентів. Тому відповідний тип доцільно оголосити у розділі опису типів програми і не використовувати змінні безіменних типів. Тоді дані такого типу простіше опрацьовувати.