小编mss*_*mss的帖子

我搜索元素的递归函数总是返回nil

我想实现一个在列表中搜索元素的递归函数。

我做了以下代码:

(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)

lisp common-lisp

1
推荐指数
1
解决办法
57
查看次数

标签 统计

common-lisp ×1

lisp ×1