пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

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

Массив (array) - это набор элементов, способных хранить данные одинакого типа. Массив можно представить в виде ряда ячеек для хранения данных. Каждая из таких ячеек наз-ся элементом массива. Массивы начинаются с 0, а не с 1.

Массив можнопредставить как ряд или последовательность данных, а можно  как таблицу, данные которой распределены по рядам и столбцам. Это двухмерный массив, где одна размерность соответствует рядам, а вторая  - столбцам. Трехмерный массив анологичен кубу, где одня размерность представляет ширину, вторая - высоту, третья - глубину. Можно создавать массивы и более трех размерностей,хотя вообразить такой объект в пространстве очень тяжело. 

При объявлении массива каждая размерность представляет собой дополнительный индекс. Следовательно, двухмерный массив имеет два индекса, трехмерный  - три, итд. Массив может иметь любое колличество размерностей, но в большинстве случаевдостаточно одной или двух.( пример двухмерного массива - шахматнаядоска).

 

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

Многомерные массивы - это массивы с более чем одним индексом.
Чаще всего используются двумерные массивы.
При описании многомерного массива необходимо указать C++, что массив имеет более чем одно измерение.

В С++ есть возможность использовать многомерные массивы, при объявлении которых необходимо указать правую границу каждого измерения в отдельных квадратных скобках. Вот определение двумерного массива:

int ia[ 4 ][ 3 ];

Первая величина (4) задает количество строк, вторая (3) – количество столбцов. Объект ia определен как массив из четырех строк по три элемента в каждой. Многомерные массивы тоже могут быть инициализированы:
int ia[ 4 ][ 3 ] = {
    { 0, 1, 2 },
    { 3, 4, 5 },
    { 6, 7, 8 },
    { 9, 10, 11 }
};

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

int ia[4][3] = { 0,1,2,3,4,5,6,7,8,9,10,11 };

Следующее определение инициализирует только первые элементы каждой строки. Оставшиеся элементы будут равны нулю:

int ia[ 4 ][ 3 ] = { {0}, {3}, {6}, {9} };

Если же опустить внутренние фигурные скобки, результат окажется совершенно иным. Все три элемента первой строки и первый элемент второй получат указанное значение, а остальные будут неявно инициализированы 0.

int ia[ 4 ][ 3 ] = { 0, 3, 6, 9 };

При обращении к элементам многомерного массива необходимо использовать индексы для каждого измерения (они заключаются в квадратные скобки). Так выглядит инициализация двумерного массива с помощью вложенных циклов:

int main()
{
   const int rowSize = 4;
   const int colSize = 3;
   int ia[ rowSize ][ colSize ];
   for ( int i = 0; i < rowSize; ++i )

   for ( int j = 0; j < colSize; ++j )

   ia[ i ][ j ] = i + j j;

}

 

 


28.12.2014; 22:48
хиты: 134
рейтинг:0
Точные науки
информатика
Языки программирования
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2025. All Rights Reserved. помощь