我在 Project Euler 上做问题 20 - 找到 100 的数字之和!(因素,而不是热情)。
这是我写的程序:
import Data.Char
main = print $ sumOfDigits (product [1..100])
sumOfDigits :: Int -> Int
sumOfDigits n = sum $ map digitToInt (show n)
我用它编译ghc -o p20 p20.hs
并执行它,只0
在我的命令行上。
困惑的是,我调用ghci
并运行了以下行:
sum $ map Data.Char.digitToInt (show (product [1..100]))
这返回了正确的答案。为什么编译的版本不起作用?