gpt4 book ai didi

function - 在 Lisp 中编写递归 GCD

转载 作者:太空宇宙 更新时间:2023-11-03 18:55:49 25 4
gpt4 key购买 nike

我在编译这个函数时不断收到随机错误:

(defun gcd (a b)
(if (= b 0)
a
(gcd b mod (a b))))

最常见的是它说“undefined function a”。所以我想我需要在那个地方 return a 。这没有用。对于 if 语句错误,我得到了很多参数。知道我在这里做错了什么吗? Lisp 的新手,到目前为止我们意见不一致。

在 Windows 7 上的 CLISP 上运行。

最佳答案

在 Lisp 中,函数调用总是*以 '(' 开头,所以行

(gcd b mod(a b))

表示“使用参数bmod调用函数gcd,调用函数a的结果为参数 b”。

我怀疑你真的想要这样的东西:

(gcd b (mod a b))

*我有一段时间没有使用 Lisp,所以我对“总是”的看法可能不是 100% 正确。

关于function - 在 Lisp 中编写递归 GCD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5630855/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com