如何使用 for/list 将 2 仅加到偶数?球拍

How can i add 2 to only even numers using for/list? Racket

使用 Racket:我被要求“将 2 添加到列表的偶数?”

我不确定如何以正确的格式实现它,确实尝试了多种不同的方法,我只是检查那些是否有任何加 2 到该值。

    ( define add2-list2
( lambda ( l )
( for/list ([ i (even? l)])  (+ 2 i )
)))

根据新的要求,even? 测试在错误的地方,你应该使用一个 if 条件,像这样:

(define add2-list2
   (lambda (l)
      (for/list ([i l])
        (if (even? i) (+ i 2) i))))

例如:

(add2-list2 '(1 2 4 5))
=> '(1 4 6 5)