1. INSTITUTO TECNOLOGICO SUPERIOR DE FELIPE CARRILLO PUERTO MATERIA: ESTRUCTURA DE DATOS DOCENTE: MIL.NIELS HENRYK ARANA CUEVAS CONTENIDO: CONCEPTOS TEORICOS UNIDAD 1 INTRODUCCION A LAS ESTRUCTURAS DE DATOS ALUMNO: ELIEZER BALAM SANTOS FECHA DE ENTREGA: 30 DE SEPTIEMBRE DEL 2014
1
2. INDICE:
TIPOS DE DATOS ABSTRACTOS………………………………………………………………………...3-4
Definición y uso.
MODULARIDAD…………………………………………………………………………………………………5-6
MEMORIA ESTATICA………………………………………………………………………………………….7
MEMORIA DINAMICA……………………………………………………………………………………….8
CONCLUSION GENERAL…………………………………………………………………………………….9
2
3. TIPOS DE DATOS ABSTRACTOS
Es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de datos definidos por el lenguaje. En pocas palabras, si los tipos de datos existentes en el lenguaje no son suficientes o no son eficientes para ciertas aplicaciones, la mayoría de los lenguajes de programación permiten al usuario definir sus propios tipos de datos. Esta definición consiste en establecer los elementos de que consta el tipo así como las operaciones que se pueden realizar con instancias de este tipo.
Para construir un tipo abstracto se debe:
1)Establecer la definición del tipo 2) Definir también las operaciones (funciones y procedimientos) que pueden operar con dicho tipo 3) Ocultar la presentación de los elementos del tipo de modo que sólo se puede trabajar con ellos usando los procedimientos definidos en 2) 4) Poder crear instancias múltiples del tipo
3
4. EJEMPLO:
struct Tipo_Persona
{
int edad;
double altura;
double peso;
char nombre[25];
};
En tal ejemplo, se esta creando una estructura de datos que definirá un nuevo tipo. Este nuevo tipo se denomina Tipo_Persona. Observe que los elementos del nuevo tipo son cuatro, un número entero, un caracter y dos números dobles; todos ellos representando características particulares del Tipo_Persona. En general, se esperaría desarrollar “operaciones” sobre este nuevo tipo que permitieran modificar cada uno de estos 4 campos o elementos.
4
5. MODULARIDAD:
Es aquel que esta constituido por una o varias instrucciones físicamente continuas y lógicamente encadenadas las cuales se pueden reservar mediante un nombre y pueden ser llamadas desde diferentes puntos del programa. La modularidad se basa en la descomposición de un problema en una serie de sub-problemas, para facilitar la comprensión de cada una parte de ello. Es una técnica de programación de algoritmos que se utiliza actualmente. Todas las funciones que no retornan valor llevan la palabra void.
5
6. EJEMPLO:
#include <conio.h> Void sumar(); Void leer(); Void imprimir(); Int n1,n2,s; Void main (){ Leer(); Sumar(); Imprimir(); } Void leer(){ } Void sumar(){ } Void imprimir(){ }
En este programa que realizamos aprendimos a usar la función de
la modularidad que consiste en la división de cada una de las funciones de datos para hacer que el programa sea mas entendible por ejemplo en la primera parte llamamos la librería <conio.h> para poder definir correctamente las funciones y que se puedan reconocer creamos tres funciones llamadas sumar, leer, imprimir que va realizar cada una de las funciones necesarias para realizar la suma de dos números, y después cada uno de los procesos en cada una de las funciones realizadas e imprimir el resultado.
6
7. Memoria estática:
Son dispositivos que retienen datos informáticos durante algún intervalo de tiempo. Las memorias de computadora proporcionan unas de las principales funciones de la computación moderna, la retención o almacenamiento de información. Es uno de los componentes fundamentales de todas las computadoras modernas que, acoplados a una unidad central de procesamiento.
En informática a una variable estática es una variable cuyo valor no varía durante la vida del proceso en ejecución. Normalmente una
variable estática tiene un ámbito más amplio que otras variables.
Es la memoria que se reserva en el momento de la compilación antes de comenzar a ejecutar el programa. Los objetos son creados al iniciar el programa y destruidos al finalizar el mismo. Mantienen la misma localización en memoria durante todo el transcurso del programa hasta que son destruidos. Los objetos administrados de este modo son: variables globales, variables estáticas de funciones, miembros static de clases y literales de cualquier tipo.
7
8. Memoria dinámica:
La memoria dinámica se refiere a aquella memoria que no puede ser definida ya que no se conoce o no se tiene idea del número de la variable a considerarse, la solución a este problema es la memoria dinámica que permite solicitar memoria en tiempo de ejecución, por lo que cuanta más memoria se necesite, más se solicita al sistema operativo. El sistema operativo maneja la memoria gracias al uso de punteros, por la misma naturaleza del proceso nos impide conocer el tamaño de la memoria necesaria en el momento de compilar.
Consideraciones:
1.Manejo transparente del tamaño de la estructura 2. Se guarda donde se encuentra el espacio 3. No se guarda necesariamente en memoria adyacente
8
9. Conclusión:
En conclusión sobre los temas vistos y los ejercicios relacionados sobre esta primera
Unidad de estructura de datos es muy importante ya que me ayudo a recordar la forma
De manejar los arreglos y las estructuras de funciones que prácticamente nos facilita
El manejo de variables que se declaran en la estructura de nuestro programa realizado
Y que facilita el análisis del código fuente para otras personas que revisan el código.
En la parte teórica primeramente se tiene que entender para poder saber que es lo que
Se esta haciendo, por lo que la teoría vista sobre esta primera unidad fueron, los tipos
De datos abstractos que la definimos como las variables y estructuras que son creados
Por el propio programador con el cual realizas las operaciones requeridas. Aprendimos
Al manejar el concepto de modularidad que es también importante para poder darle un
Buen formato a nuestro programa y que no tenga saturación de código y que los
Procesos amplios se realicen en otro método o función. Y por ultimo estudiamos el
Concepto de memoria estática y memoria dinámica, y la diferencia que existe entre ellos
Es que la estática realiza una reserva de memoria determinada a usar y la dinámica no
El limite es el necesario que se requiere. Todo lo que aprendí va ser necesario para mi
Formación profesional y en futuras materias que vamos a llevar a lo largo de la
Carrera.
9