你们中的一些人可能会发现这个问题有点奇怪,但我真的想知道这个程序是否递归或不是,这就是我想知道的。递归与多个函数
(defun howmany(sez)
(if (null sez)
0
(+ 1 (howmany (cdr sez)))))
(defun sum(sez)
(if (null sez)
0
(+ (car sez) (sum(cdr sez)))))
(defun avg(sez)
(if (null sez)
0
(/ (sum sez) (howmany sez))))
(print (avg '(100 200 300)))
谢谢你的答案!
这几乎是不可能读取无格式的Lisp代码。请缩进你的代码。例如,您的代码应该如下所示:http://pastebin.com/raw/ZdPp8A0i。使用问题下的[编辑](http://stackoverflow.com/posts/39005847/edit)链接。 –
虽然你不清楚你在问什么。 SUM自己调用,HOWMANY自己调用,所以这些都是递归的,当然。请注意,你可以'(defun avg(seq)(/(reduce'+ seq)(length seq))''不需要重新实现LENGTH和列表求和功能。 –
这个东西是不允许用在所有必须实现的功能,但是我的想法是,这是递归的,我只是想让更多的人对它进行一些考虑。 – anthraxa