我对Haskell非常新,并试图学习这头野兽.这是一个简单的函数,可以将时间(以秒为单位)转换为[天,小时,分钟,秒].我已经用签名和类型挣扎了半天,但我仍然遇到类型错误.看起来我已经尝试过各种签名组合 - 没有运气.能否请你帮忙.
secToTime :: Integer -> [Integer]第一个并且得到了一堆类型错误,这些错误足以让我迷惑不解.是显示结果列表的正确方法:main = do print secToTime或main = do map (\x -> putStrLn . show) secToTime?
secToTime secs = [d,h,m,s]
where s = secs `rem` 60
m = truncate(secs / 60) `rem` 60
h = truncate(secs / 3600) `rem` 24
d = truncate(secs / 86400)
Run Code Online (Sandbox Code Playgroud)谢谢
haskell ×1