我有一个列表'(1 2 3 4)
。
我想用一个值(例如1)减去列表中的每个值。
我想返回新列表'(0 1 2 3)
。
我正在使用R5RS。
我尝试使用map
但失败了。
我宁愿使用map
来定义我自己的迭代或递归算法。
答案 0 :(得分:3)
如果您希望(- x value)
包含每个元素x
,请映射:
(map (lambda (x) (- x value)) data)
或者您可以使用curried函数:
(define (subtract y) (lambda (x) (- x y)))`
(map (subtract value) data)