Está en la página 1de 14

ALGORITMOS Y PROGRAMACIÓN

Arreglos

Mag. Hilmar Hinojosa Lazo


Definición de arreglo unidimensional

 Un arreglo unidimensional es un conjunto de


elementos con las siguientes características:

 Se almacenan en posiciones consecutivas de


memoria.
 Todos los elementos son del mismo tipo.
 Todos los elementos tienen el mismo nombre y
se diferencian entre sí por un número que
indica su posición.

Mag. Hilmar Hinojosa Lazo


Ejemplos de arreglos
unidimensionales

Mag. Hilmar Hinojosa Lazo


Declaración de arreglos
unidimensionales en C++

 Se usa la siguiente sintaxis:


Tipo NombreArreglo [ # elementos ];

 Los arreglos anteriores se declararían de la


siguiente manera:

int edad[5];
char letra[7];
float talla[8];

Mag. Hilmar Hinojosa Lazo


Acceso a los elementos de un arreglo

 Para hacer referencia a un elemento de un arreglo


unidimensional es necesario indicar el nombre del
arreglo y la posición de dicho elemento.
 En lenguaje C++:
nombre del arreglo [ posición del elemento ]

Mag. Hilmar Hinojosa Lazo


Paso de un arreglo como parámetro

 Una función no solo puede tener datos simples


como parámetros.
 Un arreglo también puede ser parámetro de una
función.
 Si dicho arreglo sufre modificaciones dentro de la
función, estas subsistirán luego de terminada la
ejecución de la función.
 Por lo tanto, los arreglos siempre se pasan por
referencia a las funciones.
 No es necesario anteponer & al nombre del
arreglo.
Mag. Hilmar Hinojosa Lazo
Procesamiento de los datos de un
arreglo unidimensional

 Para poder realizar un mismo proceso con todos


los elementos del arreglo, es necesario un bucle
que permita, en cada una de sus iteraciones,
generar la posición del elemento que será utilizado.

 Este bucle se puede implementar en C++ con las


sentencias while, do while y for, siendo esta última
la más utilizada.

Mag. Hilmar Hinojosa Lazo


Procesamiento de los datos de un
arreglo unidimensional

 Por ejemplo, si el arreglo se llama a y tiene n


elementos, el bucle tendrá la siguiente forma:

for ( i = 0 ; i < n ; i++ )


procesamiento del elemento a[ i ]

 El procesamiento podría consistir en una lectura,


una escritura, una asignación, una comparación,
una operación aritmética o lógica, etc.

Mag. Hilmar Hinojosa Lazo


Arreglos multidimensionales

 Los arreglos que hemos visto anteriormente se


conocen como arreglos unidimensionales y se
caracterizan por tener un solo índice.
 También se conocen como listas de elementos y se
corresponden con el concepto de vector.
 Los arreglos multidimensionales son aquellos que
tienen más de una dimensión y por tanto tienen
más de un índice.
 Los más utilizados son los de dos dimensiones,
conocidos con el nombre arreglos bidimensionales.
Se corresponden con el concepto de matriz.
Mag. Hilmar Hinojosa Lazo
Arreglos bidimensionales

 Un arreglo de dos dimensiones corresponde a


una tabla con varias filas y varias columnas.
 Cada elemento almacenado en el arreglo está
identificado por dos índices, sus coordenadas,
la fila y la columna en la que se encuentra dicho
elemento.

Mag. Hilmar Hinojosa Lazo


Declaración de arreglos
bidimensionales

 Se usa la siguiente sintaxis:


Tipo NombreArreglo [ # filas ] [ # columnas ];

 Ejemplos:

int matriz[4][3];
char tablero[10][10];
float datos[8][20];

Mag. Hilmar Hinojosa Lazo


Acceso a los elementos de un arreglo
bidimensional

 Para hacer referencia a un elemento de un


arreglo bidimensional es necesario indicar el
nombre del arreglo y la posición de dicho
elemento.

 En lenguaje C++:
nombre del arreglo [ fila ][ columna ]

Mag. Hilmar Hinojosa Lazo


Procesamiento de los datos de un
arreglo bidimensional

 Para poder realizar un mismo proceso con todos


los elementos de un arreglo bidimensional son
necesarios dos bucles anidados que permitan
generar todas las posibles combinaciones de fila y
columna que definen la ubicación del elemento que
será utilizado.

 Estos bucles se pueden implementar en C++ con


las sentencias while, do while y for, siendo esta
última la más utilizada.

Mag. Hilmar Hinojosa Lazo


Procesamiento de los datos de un
arreglo bidimensional

 Por ejemplo, si el arreglo se llama m y tiene NF filas y


NC columnas, los bucles tendrían la siguiente forma:

for ( f = 0 ; f < NF ; f++ )


for ( c = 0 ; c < NC ; c++ )
procesamiento del elemento m[ f ][ c ]

 El procesamiento podría consistir en una lectura, una


escritura, una asignación, una comparación, una
operación aritmética o lógica, etc.

Mag. Hilmar Hinojosa Lazo

También podría gustarte