包含元组的Haskell代码出错

时间:2016-01-10 11:38:53

标签: haskell tuples

我一直在尝试在Haskell中创建一个函数,该函数将采用对应于分钟的非负值并以格式(天,小时,分钟)返回它,例如4000分钟将给出(2,18,39)。

我的代码不断返回错误" SELECT * FROM TABLE(f); "在负载。

这是我的代码:

file:.\prac0.hs:27 - Syntax error in input (unexpected `|')

1 个答案:

答案 0 :(得分:4)

管道(|)用作后卫,您需要的是我认为的where子句:

dayshoursmins :: Int->(Int,Int,Int)
dayshoursmins n = (d,h,m)
    where d = div n 1440
          dm = mod n 1440
          h = div dm 60
          m = mod dm 60

使用ghci运行此操作会发出:

*Main> dayshoursmins 2016
(1,9,36)

我真的不明白你的代码:它似乎混合了各种各样的概念。在=运算符之后,您不能再使用 guards 了。