我必須做一個問題,它接收一個int n並計算將它放入IO中的n個整數之和。解析錯誤(可能是不正確的縮進或不匹配的括號)
這是代碼
ej13 :: Integer -> IO()
ej13 n = do if n==0
then return 0
else do m <- getLine
let eme = read m :: Int
return (n+m)
什麼是該代碼的問題? 謝謝。
我必須做一個問題,它接收一個int n並計算將它放入IO中的n個整數之和。解析錯誤(可能是不正確的縮進或不匹配的括號)
這是代碼
ej13 :: Integer -> IO()
ej13 n = do if n==0
then return 0
else do m <- getLine
let eme = read m :: Int
return (n+m)
什麼是該代碼的問題? 謝謝。
即使您修正了縮進,因爲您試圖將字符串'm'添加到整數'n',所以這不會編譯。您可能打算使用'eme'來代替。您的返回類型應該是'IO Integer',並且您還需要進行遞歸調用以獲取剩餘值的總和。 – Lee