Documente Academic
Documente Profesional
Documente Cultură
Problema 27 ()
Este dat lista L de atomi numerici ntregi. Aplicnd recursia s se construiasc lista ce conine doar elementele
listei L ce au valoarea mai mare ca 1 i mai mic de 100.
Rezolvare
Solutia 1:
(defun recursion-list (l)
(cond ((null l) ())
((< (first l) 1) (recursion-list (rest l) ))
((> (first l) 100) (recursion-list (rest l) ))
(t (cons (first l) (recursion-list (rest l) ))
)
)
)
Solutia 2:
(defun recursion-list (l)
(if (null l) '()
(append (recursion-list (selectMici (first l) (rest l))) (list (first l)) (recursion-list (selectMari (first l) (rest l))))
)
)
(defun selectMari (l)
(cond ((null l) '())
((< 1 (first l)) (cons (first l) (selectMari 1 (rest l))))
(t (selectMari 1 (rest l)))
)
)
(defun selectMici (l)
(cond ((null l) '())
((> 100 (first l)) (cons (first l) (selectMici 100 (rest l))))
(t (selectMici 100 (rest l)))
)
)