Académique Documents
Professionnel Documents
Culture Documents
Contenido
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
2 Datos compuestos
3 Estructuras
Hasta ahora hemos trabajado con los tipos de datos que cumplen con una caracter stica especial: no se pueden descomponer. Estos son:
Nmeros: pueden ser complejos, reales, racionales o u
Hasta ahora hemos trabajado con los tipos de datos que cumplen con una caracter stica especial: no se pueden descomponer. Estos son:
Nmeros: pueden ser complejos, reales, racionales o u
Hasta ahora hemos trabajado con los tipos de datos que cumplen con una caracter stica especial: no se pueden descomponer. Estos son:
Nmeros: pueden ser complejos, reales, racionales o u
Un s mbolo es un conjunto de caracteres antecedidos por una coma simple (). Se utilizan para denotar sustantivos (nombres), palabras, direcciones, entre otros. No signican nada para scheme, el signicado lo otorga el programador. Ejemplos: hola red doll Las operaciones con s mbolos que ms usaremos son: a Para preguntar si algo es un s mbolo: (symbol? any) Para preguntar si dos s mbolos son iguales: (symbol=? un-simbolo un-simbolo)
Un s mbolo es un conjunto de caracteres antecedidos por una coma simple (). Se utilizan para denotar sustantivos (nombres), palabras, direcciones, entre otros. No signican nada para scheme, el signicado lo otorga el programador. Ejemplos: hola red doll Las operaciones con s mbolos que ms usaremos son: a Para preguntar si algo es un s mbolo: (symbol? any) Para preguntar si dos s mbolos son iguales: (symbol=? un-simbolo un-simbolo)
Un s mbolo es un conjunto de caracteres antecedidos por una coma simple (). Se utilizan para denotar sustantivos (nombres), palabras, direcciones, entre otros. No signican nada para scheme, el signicado lo otorga el programador. Ejemplos: hola red doll Las operaciones con s mbolos que ms usaremos son: a Para preguntar si algo es un s mbolo: (symbol? any) Para preguntar si dos s mbolos son iguales: (symbol=? un-simbolo un-simbolo)
Un s mbolo es un conjunto de caracteres antecedidos por una coma simple (). Se utilizan para denotar sustantivos (nombres), palabras, direcciones, entre otros. No signican nada para scheme, el signicado lo otorga el programador. Ejemplos: hola red doll Las operaciones con s mbolos que ms usaremos son: a Para preguntar si algo es un s mbolo: (symbol? any) Para preguntar si dos s mbolos son iguales: (symbol=? un-simbolo un-simbolo)
Estructuras
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
descritas con un dato de tipo simple. Ejemplo: un punto en el plano cartesiano, que requiere de su coordenada X y Y.
Las Estructuras nos permiten denir datos que estn a
Denir Estructuras
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
El programador puede denir la estructura que necesita para dar solucin a un problema. o La cantidad y el tipo de los datos que componen una estructura, deben ser conocidos. Una estructura se dene de la siguiente forma: (define-struct nombre (campo 1 . . . campo n)) La denicin de la estructura posn (que representa puntos en el o plano cartesiano) es la siguiente: (define-struct posn (x y))
Ejemplos:
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Dena la estructura para la entidad cheque con campos: nmero de cheque, banco, fecha, y monto. u (define-struct cheque (numero banco fecha monto)) Dena la estructura agenda en la que se almacena un elemento de una agenda telefnica con los campos: o nombre telfono celular. e (define-struct agenda (nombre telefono celular))
Ejemplos:
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Dena la estructura para la entidad cheque con campos: nmero de cheque, banco, fecha, y monto. u (define-struct cheque (numero banco fecha monto)) Dena la estructura agenda en la que se almacena un elemento de una agenda telefnica con los campos: o nombre telfono celular. e (define-struct agenda (nombre telefono celular))
Ejemplos:
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Dena la estructura para la entidad cheque con campos: nmero de cheque, banco, fecha, y monto. u (define-struct cheque (numero banco fecha monto)) Dena la estructura agenda en la que se almacena un elemento de una agenda telefnica con los campos: o nombre telfono celular. e (define-struct agenda (nombre telefono celular))
Al momento de denir una estructura se crean un conjunto de operaciones que podemos aplicar a la estructura (que acabamos de crear).
1 2 3
construir estructuras. seleccionar cada uno de los campos de una estructura. Preguntar si algo es una estructura de ese tipo.
Al momento de denir una estructura se crean un conjunto de operaciones que podemos aplicar a la estructura (que acabamos de crear).
1 2 3
construir estructuras. seleccionar cada uno de los campos de una estructura. Preguntar si algo es una estructura de ese tipo.
Al momento de denir una estructura se crean un conjunto de operaciones que podemos aplicar a la estructura (que acabamos de crear).
1 2 3
construir estructuras. seleccionar cada uno de los campos de una estructura. Preguntar si algo es una estructura de ese tipo.
Al momento de denir una estructura se crean un conjunto de operaciones que podemos aplicar a la estructura (que acabamos de crear).
1 2 3
construir estructuras. seleccionar cada uno de los campos de una estructura. Preguntar si algo es una estructura de ese tipo.
Ejemplo
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
se antepone la palabra make al nombre de la estructura. Ejemplo: (make-cheque 001 bancolombia bril 22200) a (make-agenda nita 5541717 3104868786) a Para seleccionar un campo de la estructura se escribe el nombre de la estructura y el nombre del campo que se desea seleccionar. Ejemplo: (cheque-numero (make-cheque 001 bancolombia a bril2 2200)) (agenda-telefono (make-agenda anita 5541717 3104868786)) Para preguntar se pone el nombre de la estructura seguido de ?: (cheque? 2), (agenda? (make-agenda nita 5541717 a 3104868786))
Ejemplo
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
se antepone la palabra make al nombre de la estructura. Ejemplo: (make-cheque 001 bancolombia bril 22200) a (make-agenda nita 5541717 3104868786) a Para seleccionar un campo de la estructura se escribe el nombre de la estructura y el nombre del campo que se desea seleccionar. Ejemplo: (cheque-numero (make-cheque 001 bancolombia a bril2 2200)) (agenda-telefono (make-agenda anita 5541717 3104868786)) Para preguntar se pone el nombre de la estructura seguido de ?: (cheque? 2), (agenda? (make-agenda nita 5541717 a 3104868786))
Ejemplo
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
se antepone la palabra make al nombre de la estructura. Ejemplo: (make-cheque 001 bancolombia bril 22200) a (make-agenda nita 5541717 3104868786) a Para seleccionar un campo de la estructura se escribe el nombre de la estructura y el nombre del campo que se desea seleccionar. Ejemplo: (cheque-numero (make-cheque 001 bancolombia a bril2 2200)) (agenda-telefono (make-agenda anita 5541717 3104868786)) Para preguntar se pone el nombre de la estructura seguido de ?: (cheque? 2), (agenda? (make-agenda nita 5541717 a 3104868786))
Denicin de datos o
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Pregunta: Cmo afecta el uso de estructura a la estrategia de o diseo? n Respuesta: No se agregan nuevos pasos, pero incluimos la denicin de los datos (Estructuras) que se van a utilizar. o La denicin de los datos se escribe al inicio del archivo y en o ella describimos en espaol y en scheme: n
1 2 3
la denicin de la estructura scheme o el nombre de la estructura en espaol n cmo se crea un nuevo ejemplar de dicha o estructura.scheme el tipo de los campos en espaol n
Denicin de datos o
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Pregunta: Cmo afecta el uso de estructura a la estrategia de o diseo? n Respuesta: No se agregan nuevos pasos, pero incluimos la denicin de los datos (Estructuras) que se van a utilizar. o La denicin de los datos se escribe al inicio del archivo y en o ella describimos en espaol y en scheme: n
1 2 3
la denicin de la estructura scheme o el nombre de la estructura en espaol n cmo se crea un nuevo ejemplar de dicha o estructura.scheme el tipo de los campos en espaol n
Ejemplos
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
(define-struct cheque (numero banco fecha monto)) un cheque es una estructura (make cheque n b f m) en donde n y m son nmeros, b y f son s u mbolos. Los selectores (no van en la denicin de datos) son: o (cheque numero unc heque) (cheque banco unc heque) (cheque fecha unc heque) (cheque monto unc heque) cual es la denicin de datos de agenda? o
Ejercicios
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o
1 2 3 4 5
(dene-struct pelicula (titulo productor)) (dene-struct novio (nombre cabello ojos telefono)) (dene-struct porrista (nombre telefono)) (dene-struct CD (artista titulo precio)) (dene-struct saco (material talla marca))
Problema
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
El resultado de un partido est compuesto por dos datos: un a s mbolo que representa el nombre del equipo y un nmero que u representa la cantidad de puntos obtenidos por el equipo. Escriba un programa en scheme que tome como entradas dos resultados de un partido y retorne el nombre del equipo que gan. Si hay empate el programa debe retornar el s o mbolo mpate. e
Entendiendo el problema
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
denicin de datos: o (define-struct resultado (nombre puntos)) ;nombre es un simbolo, puntos es un numero. ;Operaciones: ;para crear un resultado: (make-resultado <nombre > <puntos>) ;selectores: ;el nombre de un resultado X: (resultado-nombre X) ;los puntos de un resultado X:(resultado-puntos X) contrato: gano-partido: resultado resultado to numero propsito: o funcion que retorna el nombre del equipo ganador, o empate ; segun sea el caso.
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Tipos de datos compuestos I: Estructuras Angela Patricia Villota Gmez o Tipos de datos simples Datos compuestos Estructuras
Denir Estructuras Operaciones Asociadas Denicin de o datos
Fin de la Presentacin. o