c++ matrices

Upload: espacio-cultura-el-agora

Post on 06-Apr-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 C++ Matrices

    1/2

    Espacio de Cultura El gora 617 16 32 10 Pgina 1

    Matrices

    Una matriz es un grupo de uno o ms elementos de un tipo base, que se organizan en

    una estructura bidimensional.

    La sintaxis para declarar una matriz es la siguiente:

    tipo_base nombre_de_la_matriz [nmero_filas] [nmero_columnas];

    Como curiosidad apuntar que el compilador para hacer la reserva de memoria de una

    matriz lo que hace es lo siguiente; imaginar que queremos declarar una matriz de

    enteros 3x4:

    int matriz [3][4];

    El compilador esto lo entiende como un vector de tres elementos (matriz[3]), y cada

    elemento un vector de cuatro int.

    Para inicializar una matriz en el momento de la declaracin:

    int datos [2][3] = { {1,2,3}, {4,5,6} };

    Si recordamos, para acceder a los elementos de un vector, primero ponamos el nombre

    del vector y luego indicbamos mediante un ndice la posicin que queramos acceder.

    Pues para acceder a los elementos de una matriz se hace de la misma forma, se pone elnombre de la matriz y luego se se indica la fila y la columna a la que queremos acceder

    mediante dos corchetes.

    Imaginar que queremos acceder de la matriz anterior al elemento (1,1).

    datos [1][1]

    Paso de matrices a funciones

    Para pasar una matriz en una funcin hay que indicar obligatoriamente el nmero de

    columnas, ya que ese dato lo necesita el compilador.

    Queda como ejercicio pensar porque el compilador necesita el nmero de columnas

    obligatoriamente.

    Si pasamos el nmero de filas tambin por claridad, no pasa nada, no da error, solo que

    el compilador ese dato no lo utiliza para nada.

  • 8/3/2019 C++ Matrices

    2/2

    Espacio de Cultura El gora 617 16 32 10 Pgina 2

    Veamos un ejemplo, vamos a escribir una funcin que reciba dos matrices a y b y que

    en una tercera matriz las sume.

    void Sumar (const double m1[3][3], const double [3][3], double res[3][3])

    {

    for (int i=0; i