Массив — это структурированный тип данных, состоящий из фиксированного числа элементов одного типа. Тип элементов массива называется базовым. Число элементов массива фиксируется при описании и в процессе выполнения программы не меняется.
Доступ к элементу массива реализуется указателем имени массива и в квадратных скобках индекса. Индексы элементов массива это выражения любого скалярного типа кроме вещественного.
Определить массивы можно двумя способами:
1. Var
имя массива: array [тип индексов] of тип элементов;
2. Type
имя типа = array [тип индекса] of тип элементов;
Var
имя массива: имя типа;
Тип индекса (это тип-диапазон) определяет границы изменения значений индекса. Если задан один индекс, то массив называется одномерным, если два – двумерным, если n – n-мерным. Одномерные массивы используются для представления векторов, двумерные – для представления матриц.
Пример.
1-ый способ:
Var
A,B: array [1..10] of real; {одномерные массивы}
С: array [1..5,1..10] of integer; {двумерный массив}
2-ой способ:
|
|
Type
Mas1=array [1..10] of real;
Mas2=array [1..5,1..10] of integer;
Var
A,B:Mas1;
C:Mas2;
Диапазоны индексов можно задать константами, которые описаны в разделе описания констант:
Const
N=5;
M=10;
Var
C: array [1..N,1..M] of integer;
Массив можно описать и с помощью типизированных констант:
Const
Vect:array[1..5] of byte=(1,6,3,8,5);
Matr:array[1..4,1..6] of integer=
((1,6,3,5,2,4),
(7,2,5,4,3,2),
(3,1,6,3,8,5),
(5,2,8,5,5,4));
Элементы массива располагаются в памяти последовательно. Многомерные массивы располагаются таким образом, что самый правый индекс возрастает самым первым. Например, массив A[3,3] будем располагаться следующим образом: A[1,1], A[1,2], A[1,3], A[2,1], A[2,2], A[2,3], A[3,1], A[3,2], A[3,3].
Действия над массивами
Для работы с массивом как единым целым, используется идентификатор массива без указания индекса в квадратных скобках. Массивы, участвующие в этих действиях должны иметь одинаковые типы индексов и одинаковые типы компонент. Над массивом как единым целым можно произвести следующие действия:
1. A=B (проверить массивы на равенство).
2. А<>В (проверить массивы на неравенство).
3. А:=В.