Vhodné je použiť ako základ schému na počet prvkov (ľubovolná úroveň).
Pri implementácií si treba uvedomiť, že funkcia ATOM (v GCLispe) vráti T aj pri vstupe NIL, ale ten nemôžeme počítať, lebo ho považujeme za prázdny zoznam.


(defun poceta (sv)
 (cond ((NULL sv) 0)
       ((ATOM sv) 1)
       (T (+ (poceta (first sv)) (poceta (rest sv))))
 )
)

; Príklad:
(poceta '((1 2)((3 x) 4 5 6))) ; -> 7

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