大佬教程收集整理的这篇文章主要介绍了Haskell 补零程序,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
程序将 n 个零添加到列表 x 例子
fillZeros "100" 1 “0100” fillZeros "10" 4 “000010”
我的代码:
fillZeros :: (Eq a,Num a) => [Char] -> a -> [Char]
fillzeros x 0 = x
fillzeros (x:xs) a = (0:fillzeros (x:xs) a-1)
类型签名中缺少变量“fillZeros”的绑定 每次重新加载时都会出现此错误:r
您遇到的第一个问题是您为函数 fillZeros
(大写 Z
)指定签名,但您的实现是为函数 fillzeros
(小写 {{1 }}).
此外使用z
是没有意义的:它被解析为(0: fillzeros (x:xs) a-1)
,所以你从递归调用中减去一个,而且(0: (fillzeros (x:xs) a) - 1)
不是0
所以你不能在你的函数中使用它。
为了模式匹配,最好用Char
匹配,否则x
会报错,因为空字符串不匹配fillzeros "" 15
。
因此,您可以通过以下方式实现:
(x:xs)
以上是大佬教程为你收集整理的Haskell 补零程序全部内容,希望文章能够帮你解决Haskell 补零程序所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。