Está en la página 1de 11

Programación Estructurada

PROGRAMACIÓN ESTRUCTURADA 1

Sesión No. 8

Nombre: Estructura de datos

Contextualización

Uno de los objetivos de los programas en general es la emulación y


automatización de tareas prácticas y cotidianas mediante lineas de código y la
virtualizacion de la información.
Las estructuras de datos facilitan la consepcion de ciertos tipos de
comportamientos para el almacenamietno y tratamiento de informacion, los
arreglos por ejemplo, es como tener los papeles en la mesa ordenados de forma
que sea fácil ubicar y leer si es necesario, pero …

¿Qué pasa cuando la cantidad de documentos se vuelve tan grande que es


imposible colocarlos en la mesa?

En este caso en particular se tendría que


recurrir a contenedores que contengan
grupos de documentos, como es el caso
de los archiveros en las bibliotecas,
donde se puede buscar de información
más general hasta algo muy particular.

Para la virtualizacion de este tipo de problemas se crearon las estructuras de


datos multidimencionales o arreglos multidimencionales.
PROGRAMACIÓN ESTRUCTURADA 2

Introducción al Tema

En los arreglos multidimencionales se debe tomar en cuanta el número de


dimensiones del arreglo dependiendo de las características del problema que se
va a resolver, asi como de las facilidades del lenguaje de programación que se
utilice para implementar la solución.

El arreglo multidimensional como su nombre lo dice, tiene más de dos


dimensiones, por lo cual se puede complejisar bastante, sin embargo, puede ser
una estructura de datos muy funcional en problemas complejos de manejo de
información.

En la sesión anterior mencionamos los arreglos unidimensionales y


bidimensionales, en esta sesión explicaremos los tipos de arreglos
multidimensionales.
PROGRAMACIÓN ESTRUCTURADA 3

Explicación

4.3 Arreglos multidimensionales

Se puede decir que un arreglo multidimensional es una extensión de un arreglo


bidimensional que también almacena un conjunto de información del mismo tipo
de datos.

Un arreglo multidimensional también es un tipo de dato estructurado que está


compuesto por “n” dimensiones. Para hacer referencia a cada componente del
arreglo es necesario utilizar “n” índices, uno para cada dimensión. Los arreglos
multidimensionales pueden llegar a consumir cantidades muy grandes de
memoria, recordemos que los arreglos, por su naturaleza de declaración previa
al uso del mismo, reservan espacio en memoria, sea o no utilizado.

Los arreglos de más de dos dimensiones son similares a los bidimensionales,


excepto porque cada elemento se debe referenciar por medio de tres o más
índices. En el caso de la sesion anterior, en los arreglos bidimensionales o
matrices, la forma de accesar al dato almacenado o al contenedor en si era
mediante la sintaxis:

Un arreglo de tres índices tambien conocido como arreglos tridimencionales


podria tomarse en cuenta como una virtualización de cubo, donde además de
cada fila y columna se debe de agregar el nivel de profundidad (conocido
PROGRAMACIÓN ESTRUCTURADA 4

también como página) en el cual se encuentra el dato o en donde se ha de


almacenar la información.

NOTA: Cabe destacar que los arreglos de más de tres dimisiones se


utilizan menos en la práctica, ya que muchas veces se combierten en datos
abstractos y no son muy confiables en su manejo, además de abusar del
espacio en memoria.

La sintaxis de los arreglos multidimensionales sería de la siguiente forma:

Los arreglos multidimensionales pueden declarar arreglos con tantas


dimensiones como permita el compilador y el espacio de memoria del equipo.

Un arreglo tridimensional quedaría así:

Int ISBN_libros [4][3][4]

La cantidad de contenedores o espacios reservados es resultado de la


multiplicación de los índices, en este ejemplo correspondería al siguiente tamaño:

4 x 3 x 4 = 48 espacios reservados para tipos de datos enteros.


PROGRAMACIÓN ESTRUCTURADA 5

Lo cual nos daría un conjunto de contenedores similar a la siguiente figura:

En lenguaje C se puede acceder a estos espacios, utilizando ciclos for anidados


que manejen el índice a modificar.

Ejemplo en lenguaje C:

#include<stdio.h>

Void main(){

Int ISBN_libros[4][3][4] = {los datos que conforman mis libros};

For(i=0;i<=4;i++ ){  Recorre paginas

For(j=0; j<=3; j++){  Recorre filas

For(k=0:k<=4;k++){  Recorre columnas

//Éste es el dato en el contenedor a mostrar

Printf(“\n Libro: %d”,ISBN_libros[ i ][ j ][ k ]) ;


PROGRAMACIÓN ESTRUCTURADA 6

}
PROGRAMACIÓN ESTRUCTURADA 7

Conclusión

Si bien los arreglos multidimensionales permiten solucionar problemas más


complejos sobre el manejo de datos a gran escala, es también es peligroso
abusar del tamaño y dimensiones del arreglo, ya que podría absorber gran
cantidad del espacio de memoria si siquiera contener datos en los espacios
reservados. Es prudente hacer un análisis previo de los datos que nos permita
calcular la dimensión de datos a registrar (si es que se conocen los datos a
ingresar).

Se recomienda no utilizar arreglos de más de 3 dimensiones, ya que en muchos


de los casos, los datos se pierden en el tamaño de la extracción si no se tiene un
perfecto cuidado de la construcción de los ciclos de repetición que recorrerán el
arreglo.
¿Crees poder seguir el paso en las dimensiones?
Imagínate poder seguir la lógica de datos en un arreglo que corresponda a la
representación grafica de las siguientes dimensiones:

Sin embargo, no es imposible, te invito a intentarlo.


PROGRAMACIÓN ESTRUCTURADA 8

Para aprender más

En la siguiente liga podrás encontrar la forma en que se utilizan los arreglos


multidimensionales con varios ejemplos desglosados y explicados paso a paso
en su construcción directamente en lenguaje C. Se explica cómo se llena cada
nivel y contenedor de espacio en memoria con un método conocido como
pruebas de escritorio.

https://www.youtube.com/watch?v=93YARVFNHcc 1

1
Video tomado de YouTube en la liga:
https://www.youtube.com/watch?v=93YARVFNHcc.
PROGRAMACIÓN ESTRUCTURADA 9

Actividad de Aprendizaje

Con la finalidad de reforzar los conocimientos adquiridos a lo largo de esta


sesión, ahora tendrás que realizar la siguiente actividad.

Instrucciones

 Menciona cómo se declaran los arreglos multidimensionales


 Escribe un ejemplo de la sesión antes vista en lenguaje C
 Convertir en imagen en formato JPG el programa realizado y el primer
punto.
 Subirlo a la plataforma de la asignatura

Esta actividad te ayudará a comprender de una forma clara los arreglos


multidimensionales del lenguaje C, así como su correcta utilización, lo cual te
facilitará a entender las siguientes sesiones.

Esta actividad representa el 5% de tu calificación y se tomará en cuenta lo


siguiente:

 Tus datos generales.


 Título.
 Un ejemplo del lenguaje C
 Declaración de los arreglos multidimensionales
 Ortografía y redacción.
 Referencias bibliográficas
PROGRAMACIÓN ESTRUCTURADA 10

Bibliografía

 Cobo A; (s/f). Programar C desde un punto de vista científico, Madrid: Vision


Libros

 Jordá, P; (s/f). Diseño e implementación de programas en lenguaje C, Valencia:


Libro Docente.

 Mora, M; (s/f). Introducción a C y a métodos numéricos , Colombia: Universidad


Nacional de Colombia

También podría gustarte