我做了一个元组列表,但是我似乎找不到列表的总和。我需要为总和创建函数,还是可以在总和代码中调用每个列表fst
snd
?
let (startBoard : board) = ([0; 3; 3; 3; 3; 3], [0; 3; 3; 3; 3; 3])
如何找到列表的总和?我试图制作一个求和函数并调用fst
和snd
,但似乎无法使其工作……
let sum1 (fst : int list) : int =
let s = List.sum fst
希望我能表明自己的意思:)
答案 0 :(得分:2)
fst
是一个内置函数,它返回大小为2的元组的第一项。您的示例sum1
函数将其第一个参数命名为fst
,这可能不是您想要的。
尝试这样的事情:
let sum1 (startBoard : board) = List.sum (fst startBoard)
借助咖喱的力量,可以缩短这一时间:
let sum1 = List.sum << fst
答案 1 :(得分:2)
不知道确切的“木板”类型是什么,但这应该可行。
let sum (b: board) = List.sum (fst b), List.sum (snd b)