Работа с двумерными массивами— это работа с массивами, состоящими из комплекта одномерных массивов.
Введение
Когда необходимо решить задачу, сопряжённую с обработкой большого объёма информационных данных одного типа, с использованием разных переменных, не прошедших процедуру сортировки, то возникает большое количество проблем при попытке программными средствами осуществить процесс решения. Чтобы облегчить программную реализацию алгоритмов решения таких задач, в аналогичных ситуациях в языках программирования применяют специализированные средства, которые называются массивами.
Массив представляет собой выделенный участок памяти, содержащий совокупность объектов одного типа и обладающий своим собственным именем.
Массив определяется следующими признаками:
- Элементы массива. Под элементом понимается значение, хранящееся в предназначенной для него ячейке памяти, которая расположена в пределах массива и имеет конкретный адрес ячейки памяти.
- Массив имеет определённый адрес, являющийся адресом первого компонента массива.
- Массив обладает именем, которое считается признаком его идентификации, дающим возможность обращения к элементам массива.
- Размер массива. Под размером массива понимается количество входящих в массив компонентов.
- Размер элемента массива. Это количество байтов, занимаемых одним компонентом массива.
- Размер массива. Это количество байтов, отведённых в памяти для хранения всего комплекта компонентов массива. То есть, длина или величина массива определяется как произведение размера одного элемента массива на их суммарное число.
Любой элемент массива характеризуется следующими параметрами:
- Адресация компонента, которой является адрес начальной ячейки памяти, в которой расположен данный компонент.
- Индекс компонента. Индексом считается номер компонента в массиве.
- Размер компонента. Имеется ввиду его значение или содержание.
Понятие двумерного массива аналогично понятию матрицы в математике. Применительно к языкам программирования, двумерный массив — это массив, у которого в качестве элементов выступают одномерные массивы.
Работа с двумерными массивами
С точки зрения размеров массивы подразделяются на одномерные, двумерные и многомерные. Под многомерными понимаются массивы, которые имеют больше одного индекса. Многомерные массивы могут быть представлены как набор элементов, которые расположены по разным координатам. В частности, двумерный массив в графике можно изобразить следующим образом:
1[][][][][]
2[][][][][]
3[][][][][]
Данный двумерный массив обладает размерами три на пять, что означает наличие у него трёх строк и пяти столбцов. Для задания двумерного массива следует исполнить операции аналогичные объявлению одномерного массива, но в случае двумерного массива нужно указать в квадратных скобках размеры для двух координат. Например, необходимо выполнить объявление двумерного массива, обладающего размерами восемь на восемь (8*8). Необходимо отметить, что такой размер соответствует размеру доски для игры в шашки или шахматы, где тоже присутствует размер восемь на восемь. Объявить данный массив можно следующей командой:
ìntcheckers[8][8]; // объявлен двумерный массив
То есть, объявленный массив можно применять, если требуется записать партию игры в шахматы или шашки. Аналогичным образом можно использовать возможности двумерных массивов для записи информации о различных других играх.
Чтобы получить доступ к компонентам двумерных массивов следует применять два индекса, указывающих номер строчки и столбика. Эти условия можно использовать и для массивов, имеющих большие размеры, даже до условного N, но следует отметить, что многомерные массивы достаточно сложно отображаются в виде графики.
Чтобы задать конкретное значение элементу массива, следует исполнить следующие команды:
1.//первому компонентумассива назначаетсязначение пять;
2. myArray[0] = 5;
Приведём пример, в котором задаётся конкретное значение элементу двумерного массива:
1. // выбранный элемент массива получает значение 13
2. myArray[2][1] = 13;
В этом примере выполняется задание значения тринадцать некоторому компоненту двумерного массива myArray, который расположен в третьей строчке и во втором столбике. В графическом формате данным массив может быть изображён так:
1[__][__][__][__][__]
2[__][__][__][__][__]
3[__][13][__][__][__]
Следует также помнить, что номера, обозначающие положение компонентов в строчках и столбиках, считаются от нуля. Это означает, что первый компонент обладает нулевым индексом, и как раз по этой причине в рассмотренном примере оба индекса имеют значение, уменьшенное не единицу, по сравнению с требуемыми номерами координат. Также необходимо учитывать, что запрещается осуществлять ввод информации за последним компонентом массива.Например, когда массив состоит из двенадцати компонентов, то запрещается задавать какое-нибудь значение компоненту, имеющему номер двенадцать, так как последним компонентом массива является компонент с индексом одиннадцать, а компонента, имеющего индекс двенадцать, просто не существует. Но при осуществлении такой попытки вероятны самые различные версии дальнейших событий, не исключая появление помех для выполнения других программ. Правда, как правило, операционная система способна заблокировать неправильные операции этого вида. Ниже приведён пример практического использования двумерного массива в программе:
Рисунок 1. Пример практического использования двумерного массива в программе. Автор24 — интернет-биржа студенческих работ
В данном примере сначала осуществляется задание необходимых значений элементам двумерного массива. Данные величины определяются умножением индексов в строках с восьмой по одиннадцатую. Затем выполняется вывод на экран монитора его итогов, то есть сток с тринадцатой по двадцатую.
Когда необходимо объявить указатель на массив, то запрещено использование процедуры «взятие адреса» (&).