【发布时间】:2017-02-16 09:41:54
【问题描述】:
很久以前就学会了 C 代码;想用 Scheme 尝试一些新的和不同的东西。我正在尝试制作一个接受两个参数并返回两者中较大者的过程,例如
(define (larger x y)
(if (> x y)
x
(y)))
(larger 1 2)
或者,
(define larger
(lambda (x y)
(if (> x y)
x (y))))
(larger 1 2)
我相信这两者是等价的,即 如果 x > y, return x;否则,返回 y。
当我尝试其中任何一个时,都会出现错误,例如2 不是函数 或 错误:无法调用:2
我花了几个小时阅读 SICP 和 TSPL,但什么都没有跳出来(也许我需要使用“列表”并通过 car 和 cdr 引用这两个元素?)
任何帮助表示赞赏。如果我发错帖、错过了对同一问题的先前答案或其他不当之处,我深表歉意。
【问题讨论】:
标签: scheme mit-scheme