Существует несколько способов описания двумерного массива. В Паскале элементами массива могут быть данные любого стандартного скалярного типа и любого структурированного типа (кроме файлов), в частности, элементами массива могут быть массивы. Поэтому в языке Паскаль двумерный массив может быть описан как одномерный массив, элементами которого являются массивы. Например, матрицу
A11 A12 A13 A14
A = A21 A22 A23 A24
A31 A32 A33 A34
можно описать следующим образом:
Type STR=array[1..4] of real;
MATR=array[1..3] of STR;
Var B:STR; A:MATR;
В данном случае переменная B описана как одномерный массив, содержащий четыре элемента действительного типа. Переменная A описана как двумерный массив, состоящий из трех строк, каждая из которых содержит по четыре элемента.
Описание массива A можно сократить за счет исключения описания типа STR:
Type
MATR=array[1..3] of array[1..4] of real;
Var A:MATR;
Еще компактнее будет описание массива, если указать имя массива и диапазон изменения индексов для каждой размерности массива:
Type
MATR=array[1..3,1..4] of real;
Var A:MATR;
|
|
Можно описать массив и без описания типа массива в разделе типов:
Var A: array [1..3,1..4] of real;
Для выбора элемента двумерного массива надо указать имя массива и индексы строки и столбца, на пересечении которых этот элемент находится, например, если элемент находится на пересечении второй строки и четвертого столбца, ссылка на этот элемент имеет вид: A[2,4];
Для того, чтобы задать значения элементам массива можно использовать операторы присваивания. Например:
A[2,3]:= -3.7; A[1,2]:=2*sin(x)-1;
Для ввода элементов массива используются процедуры ввода. Например, в следующем фрагменте программы приведен ввод элементов массива A, описанного выше:
for i:=1 to 3 do
for j:=1 to 4 do read(A[i,j]);
Вывод элементов массива производится с помощью процедур вывода. Например, вывод элементов массива A можно осуществить следующим образом:
for i:=1 to 3 do
for j:=1 to 4 do write(A[i,j]:6);