我需要定义一个函数(阈值),该函数不能使用过滤函数,它取一个数字列表和另一个数字,并输出严格小于的数字。例如:
> (threshold '(3 6.2 7 2 9 5.3 1) 6)
'(3 2 5.3 1)
我正在考虑定义一个不到函数,但我不知道从哪里开始我遇到过这个,但我不明白pred究竟是什么。有人可以向我解释一下吗?
(define (threshold pred lst)
(cond ((null? lst) null)
((pred (first lst))
(cons (first lst) (threshold pred (rest lst))))
(else (threshold pred (rest lst)))))