我是哈斯克尔的新手。我得到这个问题:不在范围内:数据构造函数?
Assignment12.hs:5:12:不在范围:数据构造'西装 '
Assignment12.hs:5:18:不在范围:数据构造'排名'
Assignment12.hs:6:11:不范围:数据构造`等级 '
Assignment12.hs:7:11:不范围:数据构造`等级'
Assignment12.hs:8: 11:不在范围内:数据构造函数`其他' 失败,已加载模块:n一。
这是我的代码:
data Suit = Clubs | Diamonds | Hearts | Spades deriving (Show, Eq)
data Rank = Jack | Queen | King | Ace | Num Int deriving (Show, Eq)
type Card = (Suit, Rank)
cardValue :: Card -> Int
cardValue (Suit, Rank)
| Rank == Ace = 11
| Rank == Ace = 11
| Rank == Jack = 10
| Otherwise = Num
我真的很感谢你的帮助。谢谢
你'Ace'两次,而不是处理'King'或'Queen' - 它看起来像'Ace'应该有值13,然后'King','Queen' ,“杰克”? – Lee 2015-02-07 10:40:32