我必須在lisp中做一個遞歸函數,它需要一個列表,並在給定列表中只有奇數位置的元素生成另一個列表。如何使用Lisp中的迭代函數在列表中的奇數位置打印元素?
如果我有(1 2 3 4 5)
我要輸出(1 3 5)
我這裏有一個代碼:
(defun pozpar(lst) (do(
(l lst (cddr l))
(x '() (cons x (car l))))
((null l) x)))
此輸出:
(5 3 1)
我知道cons
在開始添加元素我嘗試了append
或list
,但沒有任何工作。
有很多Lisps。看起來你在這裏使用的是Common Lisp,所以我建議爲你使用的特定的* Lisp添加一個標籤。 –
這看起來不像*遞歸*函數。沒有使用遞歸。 –