Lambda Scheme-predicate得到null
我只是构建了一个使用谓词并在列表上迭代的方案代码 代码如下:Lambda Scheme-predicate得到null,lambda,scheme,predicate,Lambda,Scheme,Predicate,我只是构建了一个使用谓词并在列表上迭代的方案代码 代码如下: (define (filter para lst) (foldr (lambda (x y) (if (para x) (cons x y) y)) '() lst)) 例如,过滤奇数?”1 2 3将返回'1 3 拉姆达先发“和3-然后让第x段出局,这很奇怪?”它是有效的 但如果我写奇数?”它将打印一个错误 我缺少什么?第一个参数x是列表的当前
(define (filter para lst)
(foldr (lambda (x y)
(if (para x)
(cons x y) y)) '() lst))
例如,过滤奇数?”1 2 3将返回'1 3
拉姆达先发“和3-然后让第x段出局,这很奇怪?”它是有效的
但如果我写奇数?”它将打印一个错误
我缺少什么?第一个参数x是列表的当前元素。第二个y是蓄能器。所以在第一次调用中,x是3,y是'。这么说你没有做奇怪的事?”犯人3号,你做的很奇怪?你说得对!。。我只是试着调换一下,改成了y段,但它给了我一个错误…谢谢!