Одномірні і двовимірні масиви (таблиці) h2>
Масив
- Це пронумерована послідовність величин однакового типу, що позначається
одним ім'ям. Елементи масиву розташовуються в послідовних елементах пам'яті,
позначаються ім'ям масиву та індексом. Кожне із значень, що складають
масив, називається його компонентою (або елементом масиву). p>
Масив
даних у програмі розглядається як мінлива структурованого типу.
Масиву присвоюється ім'я, за допомогою якого можна посилатися як на масив
даних в цілому, так і на будь-яку з його компонент. p>
Змінні,
представляють компоненти масивів, називаються змінними з індексами в
відміну від простих змінних, що представляють в програмі елементарні дані.
Індекс в позначенні компонент масивів може бути константою, змінною або
виразом порядкового типу. p>
Якщо
за кожним елементом масиву закріплений лише один його порядковий номер, то
такий масив називається лінійним. Взагалі кількість індексів елементів масиву
визначає розмірність масиву. За це ознакою масиви поділяються на одномірні
(лінійні), двовимірні, тривимірні і т.д. p>
Приклад:
числова послідовність парних натуральних чисел 2, 4, 6, ..., N
являє собою лінійний масив, елементи якого можна позначити А [1] = 2,
А [2] = 4, А [3] = 6, ..., А [К] = 2 * (К +1), де К - номер елемента, а 2, 4, 6, ..., N --
значення. Індекс (порядковий номер елемента) записується у квадратних дужках
після імені масиву. p>
Наприклад,
A [7] - сьомий елемент масиву А; D [6] - шостий елемент масиву D. p>
Для
розміщення масиву в пам'яті ЕОМ відводиться поле пам'яті, розмір якого
визначається типом, довжиною і кількістю компонент масиву. У мові Pascal ця
інформація задається в розділі описів. Масив описується так: p>
ім'я масиву: Array [початкове значення
індексу .. кінцеве значення індексу] Of базовий тип; p>
Наприклад, p>
Var B: Array [1 .. 5] Of Real, R: Array
[1 .. 34] Of Char; p>
--
описується масив В, що складається з 5 елементів і символьний масив R, що складається
з 34 елементів. Для масиву У буде виділено 5 * 6 = 30 байт пам'яті, для масиву R
- 1 * 34 = 34 байти пам'яті. p>
Базовий
тип елементів масиву може бути будь-яким, за винятком файлового. p>
Заповнити
масив можна таким чином: p>
1)
за допомогою оператора присвоєння. Цей спосіб заповнення елементів масиву
особливо зручний, коли між елементами існує будь-яка залежність,
наприклад, арифметична або геометрична прогресії, або елементи пов'язані
між собою реккурентним співвідношенням. p>
Завдання
1. Заповнити одновимірний масив елементами, які відповідають наступному співвідношенню: p>
a1 = 1; a2 = 1; ai = ai-2 + ai-1 (i = 3, 4,
..., N). p>
Read (N);
(Введення кількості елементів) p>
A [1]: = 1; p>
A [2]: = 1; p>
FOR I: = 3 TO N DO p>
A [I]: = A [I - 1] + A [I - 2]; p>
Інший
варіант прісваісванія значень елементів масиву - заповнення значеннями,
отриманими за допомогою датчика випадкових чисел. p>
Завдання
2. Заповнити одновимірний масив за допомогою датчика випадкових чисел таким чином,
щоб всі його елементи були різні. p>
Program Create; p>
Type Mas = Array [1 .. 100] Of Integer; p>
Var A: Mas; I, J, N: Byte; Log:
Boolean; p>
Begin p>
Write (''); ReadLn (N); p>
randomize; A [1]: = -32768 + random (65535); p>
For I: = 2 To N Do p>
Begin p>
Log: = True; p>
Repeat p>
A [i]: = -32768 + random (65535); J
: = 1; p>
While Log and (j