我正在努力让Haskell在工作日的第一个月输出/打印。 我提出了以下代码:
import Data.Time.Calendar
import Data.Time.Calendar.WeekDate
import Data.Char
day=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]
year=2017
month=5
weekday = day!!(digitToInt(last(showWeekDate (fromGregorian year month 01)))
当我运行代码时,如何让Haskell打印工作日? 我认为最后一行代码还存在一些问题。
答案 0 :(得分:1)
Data.Time.Format
?import Data.Time.Format
weekDay = formatTime defaultTimeLocale "%a"
应该做的伎俩。我在公共汽车上,所以这段代码没有经过测试。
测试✔
如果这是关于打印到stdout的问题,那么你必须在ghci中调用这个函数
ghci> let d = fromGregorian 2017 03 08
ghci> let weekday = formatTime defaultTimeLocale "%a"
ghci> weekday d
"Wed"
或具有主要功能
import Data.Time
import Data.Time.Format
main :: IO ()
main = print $ weekday d
d = fromGregorian 2017 03 08
weekday = formatTime defaultTimeLocale "%a"
然后你可以runhaskell
或编译并运行并获得
Wed