我想实现一个在列表中搜索元素的递归函数。
我做了以下代码:
(defun encontrar (element lista)
(if (atom lista)
(if (eq lista element)
t
nil
)
(progn
(loop for element_lista in lista
do(if (eq (encontrar element element_lista) t)
t
)
)
nil
)
)
)
Run Code Online (Sandbox Code Playgroud)
我总是得到零作为回报。我尝试了下面的示例,该示例应返回t:
(encontrar #\x '(#\P #\y (#\f \x) #\A))
Run Code Online (Sandbox Code Playgroud)