gpt4 book ai didi

Haskell 添加两个列表模式匹配

转载 作者:行者123 更新时间:2023-12-04 13:02:01 25 4
gpt4 key购买 nike

所以在这里我有以下关于 GHCI

>let addlist [] [] = []
>let addlist (a:as) (b:bs) = (a+b) : addlist as bs
>let x = [1..5]
>let y = [6..10]
>addlist x y

最后一行给了我:
[7,9,11,13,15*** 异常(exception)::1:5-49:函数 addlist 中的非详尽模式

我只是想将两个列表一起添加到一个列表中......:(

我做错了什么?

谢谢

最佳答案

如果列表大小不同,请注意“非详尽模式匹配”仍然存在问题!这是适用于所有情况的解决方案:

addList [] _ = []
addList _ [] = []
addList (a:as) (b:bs) = (a+b) : addList as bs

不是列表为空的两种模式!

最后一点:在 GHCi 中编写多行定义是很痛苦的——在某些编辑器中将它们写入 .hs 文件并使用 :load MyFile.hs:reload在 GHCi 内部

关于Haskell 添加两个列表模式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7412835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com