Function 这个LISP代码中的递归和控制结构与普通函数和控制结构有何不同?

Function 这个LISP代码中的递归和控制结构与普通函数和控制结构有何不同?,function,recursion,lisp,Function,Recursion,Lisp,这段代码在我的老师给我们准备递归考试的工作表上。老师说在LISP中,在变量之前写操作数,这就足够了。不合理的是,我的教授说,如果y小于1,第2行的if块仍然可以正常读取,但他说第3行的代码在y不小于1时执行。工作表上的问题要求我们找出f3 2的结果。任何问题的答案都将不胜感激 if语句有三个子项:测试条件、测试为真时的结果和测试为假时的结果。在您的代码中,这可能会令人困惑,因为最后两个元素在第3行中被合并了。真正的结果只是“x”,而错误的结果是f*x-y1。 因此,该语句将被解读为“如果y小于1

这段代码在我的老师给我们准备递归考试的工作表上。老师说在LISP中,在变量之前写操作数,这就足够了。不合理的是,我的教授说,如果y小于1,第2行的if块仍然可以正常读取,但他说第3行的代码在y不小于1时执行。工作表上的问题要求我们找出f3 2的结果。任何问题的答案都将不胜感激

if语句有三个子项:测试条件、测试为真时的结果和测试为假时的结果。在您的代码中,这可能会令人困惑,因为最后两个元素在第3行中被合并了。真正的结果只是“x”,而错误的结果是f*x-y1。 因此,该语句将被解读为“如果y小于1,则返回x,否则返回f*x x-y 1”。 我希望这足以让你开始