Vytvárame nový zoznam, ktorý je kópiou pôvodného. Ak zistíme, že už je v pôvodnom zozname, ktorý rekurzívne prechádzame, už len jeden prvok, nezaradíme ho do výsledného zoznamu.


; Predpokladáme, že v zozname bude aspoň 1 prvok.
; Ak by mal byť aj prázdny treba za začiatok do cond doplniť ((null zoz) NIL).

(defun except (zoz)
 (cond ((null (rest zoz)) NIL)
       (T (cons (first zoz) (except (rest zoz))))
 )
)

; Príklad:
(except '(a b c d)) ; -> (a b c)

 


Autori[ ZADANIE | AKO ZAČAŤ | RIEŠENIE ]
Posledná aktualizácia 4. 9. 2001
back  home  next