Ejercicios LISP

Páginas: 2 (384 palabras) Publicado: 4 de junio de 2013
1. Define una función de dos argumentos, una lista y un elemento,
que añada el elemento a la lista en su segunda posición.

(defun anyade (l e) (append (list (car l) e) (cdr l)))

2. Define unafunción de dos argumentos, una lista y un elemento,
que cambie el segundo elemento de la lista por el suministrado como
argumento.

(defun cambia (l e) (subst e (second l) l))

3. Escribe unafunción que devuelva una lista con el primer y último
elemento de una lista suministrada como parámetro.

(defun priu (l) (list (car l)(car (reverse l))))

4. Escribe una función que permitasumar todos los elementos de una
lista de enteros.

(defun suma (l) (cond ((null l) 0)(t(+ (car l)(suma (cdr l))))))

5. Define una función que permita invertir una lista, sin utilizar lafunción predefinida reverse.

(defun invertir (l) (cond ((atom l) l)(t (append (invertir (cdr l)) (list (car l))))))

6. Escribe una función que permita eliminar duplicados consecutivos en
una lista.Por ejemplo, aplicada sobre la lista (1 1 1 2 2 1 2 3 4)
daría como resultado (1 2 1 2 3 4)

"(defun elrep(l) (cond ((atom l) l)((equal(car l)(car(cdr l))) (elrep(cdr l))) (t (cons (car l))(elrep(cdr l))))))"

7. Define una función que duplique los elementos de una lista. Por
ejemplo, aplicada sobre la lista (1 5 2 1 7 7) daría como resultado
(1 1 5 5 2 2 1 1 7 7 7 7)

(defun duplica(l) (cond ((atom l) l) (t (append(list(car l)(car l)) (duplica(cdr l))))))

8. Crear una lista que contenga todos los enteros en un rango
determinado. Si el primer argumento es menor que elsegundo, producir
la lista en orden decreciente. Por ejemplo, aplicada sobre los valores
3 y 5 daría como resultado la lista (3 4 5) y aplicada sobre 5 y 3
daría (5 4 3).

(defun rango (x y) (cond((= x y)(list y)) ((< x y)(cons x(rango (+ x 1) y)))(t(cons x(rango (- x 1) y)))))

9. Escribe una función que compruebe si una lista es palíndroma.

(defun palindroma (l) (equal l (reverse...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ejercicio Lisp
  • Ejercicios De Lecoq-Lispa
  • Lisp
  • lisp
  • lisp
  • Lisp
  • lisp dicertacion
  • programación Lisp

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS