C++
Home

Arrays Multidimensionais

Os arrays em C++ podem ter vários subscritos, um uso comum de arrays com vários subscritos é representar tabelas de valores que consistem em informações organizadas em linhas e colunas. Para identificar um elemento especifico de uma tabela, devemos especificar dois subscritos: o primeiro identifica a linha do elemento e o segundo a coluna.

  coluna 0 coluna 1 coluna 2
linha 0 a[0][0] a[0][1] a[0][2]
linha 1 a[1][0] a[1][1] a[1][2]
linha2 a[2][0] a[2][1] a[2][2]

Um array com vários subscritos pode ser inicializado em sua declaração da mesma forma que um array de apenas um subscrito.

int array[2][2] = { {0,0}, {0,1} };


int array[2][2] = { {1} , {3,4} };

Assim sendo, na segunda linha, inicializamos array[0][0] com 1, array[1][0] com 3 e array[1][1] com 4.

// Inicializando arrays multidimensionais
#include <iostream>

using std::cout;
using std::endl;

void imprimir( int [][3] );

int main()
{
   int array1[2][3] = { {1,2,3} , {4,5,6} },
       array2[2][3] = { 1,2,3,4,5 },
       array3[2][3] = { {1,2}, {4} };

   cout << "Valores em array1 por linha: "<< endl;
   imprimir( array1 );

   cout << "Valores em array2 por linha: "<< endl;
   imprimir( array2 );

   cout << "Valores em array3 por linha: "<< endl;
   imprimir( array3 );

   std::cin;

   return 0;
}

void imprimir ( int a[][3] )
{
   for ( int i = 0; i<2; i++ )
   {
      for ( int j = 0; j<3; j++ )
         cout << a[i][j] << ' ';   

      cout << endl;
   }
}

Observe no exemplo acima que as forma de se iniciar são várias, mas as formas de trabalhar com arrays multidimencionais são iguais as unidimensionais, com a possibilidade de se escrever dados em várias colunas.

 

Perguntas??? Email