Описание двумерных массивов можно представить следующим образом:
const n =2, m =3; type mas = array[1.. n,1.. m ] of integer; var a: mas; |
Это описание соответствует таблице, состоящей из n=2 строк и m=3 столбцов. При таком описании обращение к конкретному элементу, например, к a 23 (элементу, стоящему во 2-ой строке и 3-м столбце) в Паскале будет выглядеть следующим образом: a [2,3], а его значение в нашем примере (см.таблицу) будет равно 3 (т.е. a [2,3]=3).
Ввод и вывод элементов массива
Ввод данных двумерного массива аналогичен одномерному массиву, осуществлять его можно также несколькими способами.
1 способ: | 2 способ: | ||
|
|
Обратите внимание на апострофы: данные, находящиеся внутри них будут напечатаны на экране без изменения, что позволит отслеживать, какой элемент в данный момент был введен, что очень важно при заполнении данных матрицы (таблицы).
Распечатать элементы массива в виде таблицы на экране можно так:
|
|
for i:=1 to n do begin for j:=1 to n do write(a [ i,j ]:4); end; |
Такие способы ввода и вывода данных массива распространяются и на массивы большей размерности. Элементы многомерных массивов в памяти компьютера располагаются «по строкам». То есть сначала расположены все элементы первой строки (первый индекс фиксирован и равен своему минимальному значению), затем второй и т.д. Таким образом, при равноправном расположении вложенных циклов для обработки многомерного массива сначала следует организовать цикл по первому индексу, потом по второму и т.д.
Наибольший интерес представляют квадратные матрицы, то есть двумерные массивы, у которых количество строк и столбцов совпадает, например:
a: array[1..3,1..3] of integer; |