請耐心等待,因爲我對lisp還是比較陌生的。我的函數(在這種情況下稱爲測試)的目標是將列表中的所有值平方並返回一個新列表。例如,原始列表(1 2 3)
。 新的名單應該是(1 4 9)
Lisp:將列表中的所有值平方
這是目前我有什麼到目前爲止,
(defun test (n)
(cond ((null n) nil)
(t (cons * (car n) (car n))
(test (cdr n)))))
但是我不斷收到一個錯誤,我爲如何進行相當不確定。 任何幫助將不勝感激!
這樣做('mapcar(lambda(x)(* xx))yourlist)',或'(mapcar#'* yourlistlistlist')'。 Lisp編程中最重要的是利用現有的語言及其庫,以及像使用mapcar這樣的應用程序來使用高階函數的習慣用法。 – Kaz