Menú principal

domingo, 3 de abril de 2016

Matrices - Arduino / C

Una matriz es un conjunto de elementos (números) ordenados en filas y columnas, es decir un vector multidimensional (podríamos verlo también como varios vectores del mismo tamaño).  Las matrices se definen por su tamaño, que normalmente suele se de dos dimensiones. A los elementos de las matrices se accede por subíndices (si la matriz es bidimensional necesitaremos dos subíndices, tridimensional tiene tres subíndices...)

El ejemplo mas típico de una matriz es una imagen, cada pixel va  a tener un valor que corresponde al color o nivel de gris y a esos valores podemos acceder por los subindices. por ejemplo en la imagen de a continuación si tratamos de visualizar el elemento imagen[0][3] sería el 44. Siempre el primer elemento son las filas y luego las columnas y siempre, como en los vectores, se empieza en 0

                                                     

Como podemos observar,  una dimensión seria de 8 filas y la segunda dimensión seria de 8 columnas.

La estructura de una matriz es:


int matriz[dimension1][diemnsion2];

En el caso del imagen:

int imagen[8][8]; //irá de 0 a 7


INICIALIZACIÓN DE UNA MATRIZ:

Las matrices se pueden inicializar al igual que un vector, para hacerlo se seguirá la siguiente estructura:

int matriz[dimension1][dimension2] = {{elemento1,elemento2,...}, {...}};

A continuación os muestro un programa donde empleamos una matriz, su primera dimensión es de 4 elementos y la segunda dimensión de 3.

#include <stdio.h>
int main()
{
    int i,j;
    int matriz[4][3] = {{1,0,8}, {1.4,2}, {2,7,4}, {3,9,6}};

    for (i = 0; i<4; i++)
    {
        for (j=0; j<3; j++)
        {
            printf("matriz[%d][%d] = ", i, j);
            printf("%d \t", matriz[i][j]);
        }
        printf("\n");
    }
}

La pantalla de salida será:


No hay comentarios:

Publicar un comentario