TUPLASIntroducción a las Estructuras de DatosDefinición de nuevos tipos de datosManipulación de tuplasVectores de tuplasLectura/escritura de Tuplas desde teclado y ficheroFunciones y acciones que devuelven tuplasEjercicio completoEjercicios propuestosIntroducción a las Estructuras de Datos
Hasta ahora hemos centrado básicamente nuestro estudio en una forma adecuada dealgoritmizar problemas, o lo que es lo mismo, de encontrar algoritmos de solución paraciertos problemas del mundo real. Para conseguirlo nos hemos basado en:
•
Utilización eficiente de las estructuras de control básicas: asignación, secuencia,alternativa e iteración
•
Dividir el problema en subproblemas más fáciles de solucionar, construyendo programas según un diseño descendente o top-down (diseño modular)
•
Reutilización de algoritmos mediante la utilización de librerías de componentes yadesarrollados y probadosSin embargo, existe otro gran area de conocimiento que hemos tratado con poca profundidad hasta ahora y es la de utilizar tipos de datos “avanzados”. En nuestroestudio hemos introducido los tipos básicos (predefinidos) como el entero, el real, elcarácter, o el lógico, y con posterioridad hemos visto como agrupar datos del mismotipo (homogeneos) en “almacenes” como son las tablas
. A la vez hemos estudiado quelos datos pueden proceder del dispositivo de entrada estandar (el teclado) o bien pueden proceder de un almacenamiento permanente en disco (un fichero
). Asimismo laescritura de resultados puede realizarse en pantalla o bien en ficheros.En programación existe una igualdad que debe intentar cumplirse:
PROGRAMA = ALGORITMO + ESTRUCTURAS DE DATOS
De tal forma que los programas desarrollados con estructuras de datos adecuadas,resultan de mayor nivel y legibilidad, redundando esto en su costo de mantenimiento, deactualización y de desarrollo.Como estructuras de datos (EDs) se conoce a todo aquello que sirva para almacenar de forma organizada distintas informaciones que se deban manipular en los algoritmos.Existen distintos tipos de EDs como son las listas, colas, árboles, grafos, etc., que sesalen fuera de nuestros objetivos. Sin embargo vamos a estudiar como crear nuevos
1
Comúnmente en programación se llama vectores o
arrays
a las tablas unidimensionales, y matrices a las bidimensionales. Además, los arrays de caracteres se denominan cadenas o
strings
.
2
Los ficheros que hemos estado utilizando han sido de texto (que contienen caracteres ASCII o de otrocódigo), pero también pueden utilizarse ficheros binarios, cuya manipulación es más eficiente ycompacta, pero que no pueden ser abiertos con un editor de texto.