ою однієї процедури ArrayPrint}
Procedure ArrayPrint (aArray: array of Integer);: Integer; k: = 0 to High (aArray) do
Write (aArray [k]: 8);
WriteLn;: array [-1 .. 2] of Integer = (0,1,2,3);: array [5 .. 7] of Integer = (4,5,6) ; (A);
ArrayPrint (B).
Як видно з цього прикладу, фактичні межі масивів А і В, переданих в якості параметрів виклику процедурі ArrayPrint, не мають значення. Однак розмірність відкритих масивів (кількість індексів) завжди дорівнює 1 - за цим стежить компілятор. Якби, наприклад, ми додали в програму двовимірний масив С
З: array [1 .. 3,1 .. 5] of Integer;
то звернення (С)
викликало б повідомлення про помилку: Type mismatch.
(Помилка 26: Невідповідність типів.)
2.12 Дії над масивами
Для роботи з масивом як єдиним цілим використовується ідентифікатор масиву без вказівки індексу в квадратних дужках. Масив може брати участь тільки в операціях відносини "дорівнює", "не дорівнює" і в операторі присвоювання. Масиви, що залучені до цих діях, повинні бути ідентичні за структурою, тобто мати однакові типи індексів і однакові типи компонентів. p align="justify"> Наприклад, якщо масиви А і В описані як var А, В: array [1 .. 20] of real; то застосування до них допустимих операцій дасть наступний результат:
В
Дії над елементами масиву.
Після оголошення масиву кожен його елемент можна обробити, вказавши ідентифікатор (ім'я) масиву та індекс елемента в квадратних дужках. Наприклад, запис Mas [2], VectorZ [10] дозволяє звернутися до другого елементу масиву Mas і десятому елементу масиву VectorZ. p align="justify"> При роботі з двовимірним масивом вказуються два індекси, з n-мірним масивом - n індексів. Наприклад, запис MatrU [4,4] робить доступним для обробки значення елемента, що знаходиться в четвертому рядку четвертого стовпця масиву MatrU. p align="justify"> Індексовані елементи масиву називаються індексованими змінними і можуть бути використані так само, як і прості змінні. Наприклад, вони можуть перебувати у виразах в якості операндів, використовуватися в операторах for, while, repeat, входити в якості параметрів в оператори Read, Readln, Write, Writeln; їм можна присвоювати будь-які значення, відповідні їх типу. br/>
.13 Приклад рішення задачі з використанням масивів Паскаля
1. Дано два n-мірних вектора. Знайти суму цих векторів.
Рішення завдання:
В· Вхідними даними в цьому завданні будуть два одновимірних масиву. Розмір цих масивів може бути довільним, але певни...