logo
Учебная БИ 3 вариант

Многомерные массивы

Элементами массивов могут быть также массивы. В этом случае мы имеем двухмерный массив ( матрицу ).

Двухмерные массивы задаются в программе следующим образом:

а) через объявление типа в формате

TYPE

< имя типа > = ARRAY [тип индекса 1] OF ARRAY [тип индекса 2] OF < тип элементов >;

или

< имя типа > = ARRAY [ тип индекса 1, тип индекса 2 ] OF <тип элементов>;

Обе формы описания равносильны, но вторая употребляется чаще.

VAR

< идентификатор >: < имя типа >;

б) через объявление переменных в формате

VAR

< идентификатор >: ARRAY [тип индекса 1, тип индекса 2] OF < тип элементов >;

Необходимо отметить, что индексы не обязательно должны иметь один и тот же тип. В общем случае индексы по каждому измерению могут быть разных типов как, например, в следующем фрагменте раздела описаний.

Примеры объявления двухмерных массивов:

CONST

N = 5;

M = 10;

TYPE

A = ARRAY [ 1.. N, 1.. M ] OF WORD;

B = ARRAY [ 1.. 10, 1.. 20 ] OF REAL;

VAR

C: ARRAY [ 1.. N, BOOLEAN ] OF -20.. 20;

D1, D2: A;

F1, F2: B;

Типизированная константа-матрица объявляется в программе следующим образом:

CONST

M: ARRAY [1.. 3, 1.. 2] OF INTEGER = ((1, 2), (3, 4), (5, 6));

Массивы могут быть не только одномерными или двухмерными, но и 3-х, 4-х и n-мерными. В этом случае они описываются в программе следующим образом:

VAR

M: ARRAY [ 1.. 10, -10.. 9, CHAR ] OF BYTE;

N: ARRAY [ 1.. 5, 1.. 10, 1.. 15, 1.. 20 ] OF SHORTINT;

В памяти компьютера элементы размещаются друг за другом так, что при переходе от младших адресов к старшим наиболее быстро изменяется самый правый индекс массива. Например, для матрицы 2х2: A[1,1], A[1,2], A[2,1], A[2,2].