我尝试在 Dr Racket 中使用“lambda”来完成我的第一步。(高级语言)
一切都很好,直到我尝试了以下代码:
(map (lambda (list1 list2)
[map list (foldr + 0 (map * list1 list2 ) ) ] )
(list 1 2 3 4 5)
(list 6 7 8 9 10)
)
Run Code Online (Sandbox Code Playgroud)
我尝试根据 Racket 文档尽可能地调整我的代码。但我就是不明白这里出了什么问题。 http://docs.racket-lang.org/reference/pairs.html#(def._((lib._racket/private/map..rkt)._map))
它应该输出一个由具有相同索引的 2 个输入列表元素的积组成的单个列表。控制台输出显示:
map: 2nd argument must be a list, given 1
Run Code Online (Sandbox Code Playgroud)
而 1 始终是 list1 的第一个元素
潜意识说我只是在任何地方搞乱了( )。