G'day伙计们,
目前正在努力完成我正在做的一些功课,并且遇到一个问题,即我试图在接受多个输入的函数中应用地图。
所以在我使用processList的情况下f(x:xs)= map acceleList f xs x xs
processList被赋予一个浮点值(f)和一个List,它将它分类到另一个List
中Accelerate List采用浮动值(f)List和List对象,通过它返回另一个List对象
我知道我的加速列表代码是正确的,但我不能为我的生活获得此代码的语法工作:
processList :: Float -> [Object] -> [Object]
accelerate f [] = []
accelerate f [x] = [(accelerateForce f x x)]
accelerate f (x:xs) = map accelerateList f xs x xs
有什么想法吗?我现在已经摸不着头脑约3个小时了。我知道这是真的简单。
答案 0 :(得分:5)
首先,你可能想在这里使用一些括号:
map accelerateList f xs x xs
函数map
只取两个参数(不是五个),所以你应该做这样的事情,例如:
map (accelerateList f xs x) xs
但另一方面,这不适合您的功能签名。问题可能是您没有以足够好的方式构建解决方案。可能是一个单独的问题,但解释你试图通过加速函数(或者哪个是“顶级”函数)所要完成的事情肯定会有所帮助。