根据我的任务,下面在Scheme-notation中定义的一些值是函数。如果它不是一个函数,我需要确定它的值。否则,我必须确定函数计算的内容。:
First: (define res (+ 1 1))
Second: (define res2 ((lambda (i) (* wert1 i)) 2))
就我而言,+
是函数名称,values 1,1
是函数的参数。秒的情况相同。 Lambda是一种在Scheme中编写函数的方法,不是吗?所以我认为这也必须是一个功能。
我的解决方案说既不是功能,也是价值! 我有什么问题或者我的解决方案有问题吗?
答案 0 :(得分:1)
你是+
和(lambda (i) ...)
是函数。然而,这不是问题。问题是定义的值(即res
和res2
)是否是函数。
res
被定义为等于(+ 1 1)
,它使用参数1 1调用+
函数(正如您所说)。这样做的结果是2
。因此res
等于2
,这是一个数字,而不是函数。
res2
的定义也是如此:(lambda (i) (* wert1 i))
是一个函数。但是你没有将res2
定义为等于(lambda (i) (* wert1 i))
1 ,你将它定义为等于将该函数应用于参数{{1}的结果}}。所以你应该回答将该函数应用于该参数的结果是什么。
1 这看起来像这样:
2
在这种情况下,“res3是一个函数”将是正确的答案。