Computo

Páginas: 7 (1650 palabras) Publicado: 10 de octubre de 2013
Ingeniería de la Programación
Tipos de Datos Abstractos

Tipos de Datos Abstractos (TDA)
• Un TDA 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 sistema.
• Está formado por un conjunto válido de elementos y un número
de operaciones primitivas que se pueden realizar sobre ellos.
Ejemplo:
- Definición del tipoNumero racional: Conjunto de pares de elementos (a,b)
de tipo entero, con b0.
- Operaciones:
CrearRacional:
Suma:
Resta:
Producto:
División:
Numerador:
Denominador:
ValorReal:
MCD:
Potencia:
Simplifica:

a, b
(a,b) + (c,d)
(a,b) - (c,d)
(a,b) * (c,d)
(a,b) / (c,d)
(a,b)
(a,b)
(a,b)
(a,b)
(a,b)^c
(a,b)

= (a,b)
= (a*d+b*c , b*d)
= (a*d-b*c , b*d)
= (a*c , b*d)
=(a*d , b*c)
=a
=b
= a/b
...
= (a^c , b^c)
= ( a/mcd(a,b) , b/mcd(a,b) )

• Una vez definido se podrán declarar variables de ese tipo y
operar con ellas utilizando las operaciones que aporta el tipo.
Ejemplo: TRacional r1,r2, rsuma;
CrearRacional(4,7, &r1);
CrearRacional(5,8,&r2);
Suma(r1, r2, &rsuma);
printf(“El valor real es %f”, ValorReal(rsuma) );

Departamento de Informática Ingeniería de la Programación
Tipos de Datos Abstractos
• Un TDA es el elemento básico de la abstracción de datos. Su
desarrollo es independiente del lenguaje de programación
utilizado, aunque este puede aportar mecanismos que faciliten
su realización. Debe verse como una caja negra.
• En un TDA existen dos elementos diferenciados:
- La Interfaz de utilización
- La representación
7'$

Ala hora de utilizar el TDA, la
representación
debe
permanecer
oculta.
Solo
podremos
utilizar
las
operaciones del tipo para
trabajar con sus elementos.

,QWHUID]
'HILQLFLyQ
2SHUDFLRQHV

5HSUHVHQWDFLyQ
,PSOHPHQWDFLyQ

• Para construir un tipo abstracto debemos:
1. Exponer una definición del tipo.
2. Definir las operaciones (funciones y procedimientos) que
permitan operar coninstancias de ese tipo.
3. Ocultar la representación de los elementos del tipo de modo
que sólo se pueda actuar sobre ellos con las operaciones
proporcionadas.
4. Poder hacer instancias múltiples del tipo.

♦ Tipos básicos de operaciones en un TDA
• Constructores: Crean una nueva instancia del tipo.
• Transformación: Cambian el valor de uno o más
elementos de una instancia del tipo.
•Observación: Nos permiten observar el valor de uno o
varios elementos de una instancia sin modificarlos.
• Iteradores: Nos permiten procesar todos los componentes
en un TDA de forma secuencial.

Departamento de Informática

Ingeniería de la Programación
Tipos de Datos Abstractos

♦ Implementación
• Una vez definido el TAD se T C o mp lejo .h
escoge
una
representación
internautilizando los tipos que
o p erac ió n1
proporciona el lenguaje y/o otros
o p erac ió n2 +
o p erac ió n3
TAD ya definidos previamente.
...
• La
representación
deberá
ocultarse
utilizando
los
mecanismos que nos proporcione
el lenguaje. Ocultamiento de
Información.

Definic ió n
d el tip o

T C o mp lejo .c

• Normalmente la implementación
del tipo se realiza en un módulo
aparte queserá enlazado al
programa principal

R ep resentac ió n:
es truc tura d e d ato s
Im p lem entac ió n
d e o p erac io nes:
C ó d igo d e o p erac ió n1
C ó d igo d e o p erac ió n2
C ó d igo d e o p erac ió n3

• Se necesitará un fichero cabecera que contenga la definición de
las operaciones y la declaración del tipo (representación). Con
esta información se podrán definir elementosdel tipo y acceder a
sus operaciones
Ejemplo: Fichero cabecera
struct _TRacional { int a,b};
typedef struct _TRacional TRacional;
void CreaRacional (int a, int b, TRacional *r );
void SumaRacional(TRacional r1, TRacional r2, TRacional *rsum);

Departamento de Informática

Ingeniería de la Programación
Tipos de Datos Abstractos

TDA Pila
Definición del Tipo
Es una colección...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Computador
  • La computadora
  • La computadora
  • Computadora
  • Computo
  • Computo
  • Computadora
  • La computadora

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS