Drscheme

Páginas: 2 (482 palabras) Publicado: 25 de octubre de 2011
PROGRAMACIÓN FUNCIONAL
PRÁCTICA 6

Listas
Las listas son una estructura de datos lineal que suele ser representada en DrRacket de la forma ' (e1 e2 e3 … en ) , Las listas son uno de loselementos fundamentales en DrRacket y LISP.

El lenguaje consta con una serie de primitivas básicas para el manejo de las mismas, a continuación mostramos una tabla de las funciones más utilizadas.Función | Descripción |
(list? L) | Valida si L es una estructura de tipo lista. Su retorno #t o #f |
(null? L) | Retorna #t si la lista L es nula es decir está vacía |
(car L) | Retorna el primerelemento de una lista L |
(cdr L) | Retorna una sub-lista de L sin el primer elemento |
(list a b ..) | Construye una lista con a b ... elementos |
(cons a L) | Inserta el elemento “a” alprincipio de la lista L |
(append L1 L2) | Concatena las listas L1 y L2 en ese orden |
(list-ref L i) | Devuelve el elemento en la posición i de L |
(sort L fnc?) | Ordena la lista L aplicando elcriterio de ordenamiento definido en la función fnc? |
(map fnc L) | Aplica la función fnc sobre cada elemento de L |
(length L) | Cuenta y retorna el número de elementos de L |

Ejemplo 1:Construya una función que reciba como parámetro una Lista de objetos, cuente y retorne el número de elementos de la misma, la función retornara false si el parámetro es incorrecto

(define (contar L)(if (list? L) (contarAux L) false))

(define (contarAux L)
(if (null? L)
0
(+ 1 (contarAux (cdr L)))))

Ejemplo 2:

Construya una función que reciba como parámetro una Lista de objetos yun elemento A, que agregue el elemento A al final de la lista, la función retornara false si algún parámetro es incorrecto. NOTA: No se permite utilizar (append . .)

(define (agregarAlFinal L A)(if (list? L) (agregarAlFinalAux L A) false))

(define (agregarAlFinalAux L A)
(if (null? L)
(list A)
(cons (car L) (agregarAlFinalAux (cdr L) A))))

Ejercicios:

1. Construya...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Drscheme (ejercicios)

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS