Documente Academic
Documente Profesional
Documente Cultură
Teora 16
TEMAS
Podemos utilizar un registro, para representar las caractersticas del celular titular, nmero, plan, fecha de fabricacin,
Especificacin de las operaciones permitidas para el tipo. (visible) Desarrollo interno de cada una de las operaciones permitidas, con independencia para el usuario de cmo se implementan. Encapsulamiento de todo, de manera que el usuario no pueda manipular los datos del objeto excepto por el uso de las operaciones definidas en el punto 11 anterior.
Tipos de datos definidos por el lenguaje Representacin y operaciones (lenguaje), Valores (Lenguaje)
12
Caractersticas
Es un tipo de datos para representar objetos del mundo real que no existen en el lenguaje.
Tiene una parte pblica (INTERFACE) en donde se declara el nombre del tipo y las posibles operaciones Tiene una privada parte El
(IMPLEMENTACION)
donde se implementa con alguna estructura el tipo declarado y todas las operaciones de la interface.
usuario slo conoce la parte pblica, es decir, no conoce como es la estructura utilizada ni como se implementaron las operaciones
14
Usuario
Indica el nombre del TAD a utilizar. Declara las variables del tipo de datos exportado. Utiliza SOLO las operaciones definidas en la interface para la resolucin del problema
Se implementa el programa el cual UTILIZA el tipo y las operaciones del TAD, pero no conoce como est implementado
implementacin representacin del type exportado procedures y funciones privadas implementacin de procedures y funciones visibles
19
Procedure crear(var c:celular; tit:string; mod:string; afab:integer; num:integer); Begin c.titular:=tit; c.modelo:= mod; c.ao:= afab; c.numero:= num; 21 End;
Una vez que implementamos todas las operaciones el Tad est terminado y puede ser utilizado por un programa o por otro Tad.
Realice un programa que lea celulares (hasta leer uno de modelo XXX), e informe el titular del celular con fecha de fabricacin ms antigua
26
Program uno; Uses TipoCelular; Var cel:celular; t,m,nommax:string; num,ao:integer; Begin read(t);read(m);read(a);read(num); max:=-1;
While (m <> XXX) do begin crear(cel,t,m,ao,num); if ((2013-consultarAo(cel) > max) then max:= (2013-consultarAo(cel)); consultarTtular(cel,tit); read(t); read(m); read(a);read(num); end; write (tit); end. 26
Modifique el programa anterior para que lea 20 celulares, los almacene en una estructura y luego informe el titular del celular con ao de fabricacin ms antiguo.
27
Begin for i:= 1 to 20 do begin read(t);read(m); read(num);read(ao); crear(cel,t,m,ao,num); v[i]:= cel; ERROR!!!! end; obtenerMaximo(v,titMax); write (titmax); end. 28
v[i]
es de tipo celular
:= cel;
es de tipo celular
Solucin?
Implementar
30
31
Begin for i:= 1 to 20 do begin read(t); read(m); read(a);read(num); crear(cel,t,m,ao,num); asignar (v[i],cel); end; obtenerMaximo(v,titMax); write (titmax); end. 33
35
Los parmetros de los procedimientos de un TAD pueden ser tipos simples ( integer, boolean,char, real), strings, el tipo exportado, el tipo exportado por otro TAD que utilice este TAD.
En la implementacin de las operaciones del TAD no se pueden hacer operaciones de lectura ni de escritura.
3
4
El programa que utiliza el TAD slo puede aplicar a las variables del tipo exportado del TAD las operaciones definidas en la interface.