; Ex1.1
(de somme (a b)
(cond
((> a b) 0)
(t (+ a (somme (+ 1 a) b)))))
; Ex1.2
(de somme-carres (a b)
Publicité
(cond
((> a b) 0)
(t (+ (\* a a) (somme-carres (+ 1 a) b)))))
; Ex2
(de setnth (l p e)
(cond
((null l) nil)
Publicité
((= p 1) (cons e (cdr l)))
(t (cons (car l) (setnth (cdr l) (1- p) e)))))
; Ex3
(de funsearch (e l)
(mapcar (lambda (sl)
(if (member e sl) (car sl) sl)) l))
; Ex4
Publicité
(dmd foreach (L f test)
`(mapcar (lambda (x) (if (funcall ,test x)
(funcall ,f x))) ,L))
; Ex5
(de ord (A)
(cond
((null A) t)
Publicité
((and (> (car A) (caadr A)) (<= (car A) (caaddr A)))
(and (ord (cadr A))
(ord (caddr A))))
(t nil)))