(defun rember (a lat) (cond ((null lat) nil) (t (cond ((eq (car lat) a) (cdr lat)) (t (cons (car lat) (rember a (cdr lat)))))))) (defun minvet (vet) (cond ( (null (cdr vet)) (car vet) ) ( (< (car vet) (car (cdr vet))) (minvet (cons (car vet) (cdr (cdr vet)) )) ) (t (minvet (cdr vet)) ) )) (defun orderinc (vet) (setq a (minvet vet)) (cond ((null (cdr vet)) vet) (t (cons a (orderinc (rember a vet)))))) (defun ultelem (list) (cond ( (null (cdr list)) (car list) ) (t (ultelem (cdr list)) ))) (defun even# (lat) (cond ( (null lat) t ) ( (null (cdr lat)) nil) (t (odd# (cdr lat)) ) )) (defun odd# (lat) (cond ( (null lat) nil ) ( (null (cdr lat)) t) (t (even# (cdr lat)) ) )) (defun checklat (l) (cond ( (null l) t) (t (and (atom (car l)) (checklat (cdr l)))) )) (defun firstatom (l) (setq a (car l)) (cond ( (null a) nil ) ( (atom a) a ) (t (firstatom a)) )) (defun tamanho (l) (cond ( (null l) 0) (t (+ 1 (tamanho (cdr l)))))) (defun joinlist (l1 l2) (cond ( (null l1) l2 ) ( (cons (car l1) (joinlist (cdr l1) l2))))) (defun separateodd (v1 v2 vet) (cond ( (null vet) (cons v1 (cons v2 ()) ) ) ( (oddp (car vet)) (separateodd (cons (car vet) v1) v2 (cdr vet))) (t (separateodd v1 (cons (car vet) v2) (cdr vet))))) (defun testset (lat) (cond ( (null lat) t) ( (member (car lat) (cdr lat)) nil) ( t (testset (cdr lat))) )) (defun median (vet) (setq v (orderinc vet)) (setq n (tamanho vet)) (cond ( (<= n 1) nil ) ( (<= n 3) (car v) ) ( t (median (remult (cdr v)))) )) (defun remult (lat) (cond ( (null (cdr lat)) nil ) (t (cons (car lat) (remult (cdr lat)) )))) (defun testset (l) (cond ( (not (checklat l)) nil) ( (null l) t ) ( (member2 (car l) (cdr l)) nil ) (t (testset (cdr l))) )) (defun member2 (a list) (cond ( (null list) nil ) ( (eq a (car list)) t ) (t (member2 a (cdr list)) ) ))