0
我有一個列表:(setq listy '(4 -3 8 99 -40 61 12 -8 2 -20))
計數許多正數如何在列表(NIL不是一個數字?)
我的功能lenPos
應該找到所有正數的列表的長度(即6)。不過,我得到這個錯誤:
*** - +: NIL is not a number
我檢查,如果我的列表中的if語句做任何數量的檢查之前空。所以我不明白錯誤來自哪裏。
;num of positive elems
(defun lenPos (list)
(cond
((null list) 0) ;if null list return 0
(t (cond ;else
((> (car list) 0) (+ 1 (lenPos (cdr list))))
))
)
)
是。在嵌套 - 如果我需要一個else語句:(t(+ 0(lenPos(cdr list)))) – nhershy