(define (rec base height)
(let ((product (* base height))(half 0.5))
(let ((sum (* product half)))
(display "Area is")
(display sum))))
let: expected only one expression after the name-defining sequence, but found one extra part in: (display sum)
我有上述错误,我不知道哪个部分出错了
答案 0 :(得分:3)
在完整的Scheme中,这是允许的。但是,您可能正在使用Racket提供的Scheme的一种教学变体(例如中级学生或高级学生),这些变体不允许具有多个表达式的函数。
我说你可以使用begin
解决这个问题,但是中级学生也不提供begin
(高级学生似乎有帮助)。如果您正在使用中级学生,我想您不应该使用多个表达式,就是这样。 : - )
答案 1 :(得分:0)
初级和中级学生语言确实不适合使用I / O的程序。如果您的老师正在分配需要您使用这些语言之一的问题,并且还要求您打印出某些内容,那么这将是一个不太合适的任务。
为了记录,我当然会犯这样的错误......