【发布时间】:2015-03-14 12:58:17
【问题描述】:
我在 Scheme (Dr Racket) 中获得了一项任务,以反转给定数字的顺序。解决方案应该是递归的,这就是我到目前为止所得到的.. 事实是,我不太确定给定的算法是否有效,因为我得到: " 申请:不是程序; 期望一个可以应用于参数的过程” 每次运行都会出错。。 对这个问题有什么想法或帮助吗?
(define reverse-digits
(lambda (n) (if (> n 9)
(+ (* 10 (modulo n 10)) (reverse-digits (quotient n 10)))
(n))))
(reverse-digits 1234)
【问题讨论】:
-
你得到
application: not a procedure的原因是因为你把n放在括号里,在这种情况下,这意味着你试图将n作为一个函数来调用。