Escriba una función extrae la cuál debe constar de tres argumentos: una lista, un número de posición inicial y otro número de posición final. La función deberá devolver la lista formada sólo por las letras comprendidas entre la posición inicio y final. En el caso que la lista esté vacía o bien inicio sea mayor que final se devolverá la lista vacía. Si final sobrepasa el tamaño de la lista se devolverán todos los elementos posibles
(define (extrae Lista1 inicio final)
(if (zero? final) null
(if (zero? inicio) null
(if (null? Lista1) Lista1
(if(= inicio 1) (cons (car Lista1) (extrae (cdr Lista1) 1 (- final 1)))
(extrae (cdr Lista1) (- inicio 1) (- final 1)))))))
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario