gpt4 book ai didi

scheme - 在方案中反转数字时参数数量错误

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

我正在尝试在 Scheme 中编写一个程序来反转给定的数字。然而,问题是虽然我的递归正确,但 Scheme 说我的递归调用的参数数量不正确。

这段代码有什么问题?为什么会出现参数错误的错误?

(define (rev revs n)
(cond ( (= n 0) 1)
(else (
(rev ( ( + (* revs 10) (remainder n 10) ) (quotient n 10) ) )
) )))

最佳答案

你有几个错误的括号,基本情况是错误的(你必须返回累加器)。试试这个:

(define (rev revs n)
(cond ((= n 0) revs)
(else
(rev (+ (* revs 10) (remainder n 10)) (quotient n 10)))))

请记住,在 Scheme 中,圆括号表示“函数应用程序,如果您用 () 包围某些内容,解释器将尝试将其中的内容作为函数应用。在放置这些 ().

关于scheme - 在方案中反转数字时参数数量错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28412236/

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