小编use*_*478的帖子

Haskell:签名/类型混乱的简单计算

我对Haskell非常新,并试图学习这头野兽.这是一个简单的函数,可以将时间(以秒为单位)转换为[天,小时,分钟,秒].我已经用签名和类型挣扎了半天,但我仍然遇到类型错误.看起来我已经尝试过各种签名组合 - 没有运气.能否请你帮忙.

  1. 我需要什么签名?我尝试了secToTime :: Integer -> [Integer]第一个并且得到了一堆类型错误,这些错误足以让我迷惑不解.
  2. 是显示结果列表的正确方法:main = do print secToTimemain = 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

2
推荐指数
1
解决办法
228
查看次数

标签 统计

haskell ×1