我不知道我的代码出了什么问题,我只想得到一个列表并正确填充它,并返回该列表作为该函数的结果。你能帮我解决这个问题吗?列表中的哈斯克尔错误
fill [] counter= []
fill (x:xs) counter= do
(if x==0
then do
let new =counter+1
new:xs
fill xs new
else
fill xs counter)
我想非重复的数字
main = do
fill [9,0,9,0,0,0] 0 -- expexted to get [9,1,9,2,3,4]
你想填写什么? – Ryan
我不明白这里的逻辑。如果你想''1,2,3,4]',使用'[1..4]'。 – Ryan
您是否期待'fill [0,0,0,0] 0 == [0,1,2,3]'? –