以下函数应该返回具有多项式的列表中所有多项式的和作为浮点列表。 (即:4x²+ 2X + 1将[4,2,1]
和5x⁵+ X + 2 [5,0,0,0,1,2]
)Haskell本地函数不在范围内
psum :: [[Float]] -> [Float]
psum (x1:x2:xs) = psum (binpsum (x1, x2)):xs
psum x = x
where binpsum (x:xs) (y:ys) = x+y:binpsum (xs, ys)
binpsum (x) (y:ys) = x+y:ys
binpsum (x:xs) (y) = x+y:xs
我越来越
Not in scope: ‘binpsum’
这是我第一次和Haskell的工作,所以我” d猜测我在使用binpsum (x1, x2)
的方式中有错误,因为我在where子句中找不到任何错误。
谢谢!
如果我猜的话,我会说这是可能的缺口问题。最后两行需要缩进至上面一行。 (即,“binpsum”需要在所有三条线上排队)。 – MathematicalOrchid
尝试修复缩进,以使三条'binpsum'行开始在同一列上。 – chi
对不起,粘贴代码就像这样做了缩进,我的代码有缩进,就像我刚刚编辑它并获取该错误。 – mjgalindo