Documentos de Académico
Documentos de Profesional
Documentos de Cultura
de Programacin
paula.figueroa@correounivalle.edu.co
Contenido de la clase
1. Qu es una Lista?
Qu es una lista?
La lista es un tipo de dato recursivo porque se
define
en
trminos de si misma.
Una lista es:
cabeza
es
un
elemento
adicionar
en
la
lista
las
listas se
la lista vaca.
componen de
cabeza y
cola, excepto
Ejemplo
Ejemplo
Ejemplo
Ejemplo
Operadores de listas
Anteriormente se habl de la cabeza y cola de una
lista, existen operadores que nos permiten acceder a
estos dos elementos:
first : retorna el primer elemento de la lista
rest : retorna la cola de una lista
Ejemplos
Ejercicio
Ejemplo
Desarrolle la funcin saludos, la cual tiene como entrada un nmero
natural n y produce una lista que tienen n veces el smbolo 'hola
Ejemplo
;;Contrato:
;; saludos: n -> lista
;; Propsito: generar una lista que tenga el
;;smbolo 'hola n veces
;;Anlisis de los datos:
;;- Cuando n es cero: el programa retorna una lista vaca
;;- De lo contrario:
Ejemplo
;;Ejemplos
;;Si n es 1, el programa debe retornar la lista con un
;;elemento: (cons 'hola empty)
;;Si n es 3, el programa debe retornar la lista con 3
;;elementos: (cons 'hola (cons 'hola (cons 'hola empty)))
Ejemplo
Como no sabemos el valor de n, necesitamos un conjunto de
instrucciones
que
se
repitan
hasta
que
se
cumpla
una
condicin.
La condicin es el criterio de parada, o el caso base.
Las instrucciones que deben repetirse, deben dar solucin
al problema.
La forma de repetirlas es por medio de llamados recursivos
a la funcin.
Ejemplo
cuando n=3?
eso
debemos
tener
muy
claro
cul
es
la
operacin
luego
funciones
tienen
como
operador
principal cons.
En
el
(empty)
caso
base
retornan
la
lista
vaca
Ejemplo
Ejemplo
Implemente una funcin que toma como entrada
una lista de nmeros y retorna una lista con
Ejemplo
Ejemplo