我遇到了一个问题,与我不太熟悉的一个函数有关,它是 fromIntegral 函数。
基本上,我需要输入两个 Int 类型的参数并返回数字的百分比,但当我运行我的代码时,它一直给我这个错误:
代码:
percent :: Int -> Int -> Float
percent x y = 100 * ( a `div` b )
where a = fromIntegral x :: Float
b = fromIntegral y :: Float
错误:
No instance for (Integral Float)
arising from a use of `div'
Possible fix: add an instance declaration for (Integral Float)
In the second argument of `(*)', namely `(a `div` b)'
In the expression: 100 * (a `div` b)
In an equation for `percent':
percent x y
= 100 * (a `div` b)
where
a = fromIntegral x :: Float
b = fromIntegral y :: Float
我阅读了'98 Haskell预设文档,上面提到有一个名为fromInt的函数,但它从未起作用,所以我不得不使用这个,但它仍然无法工作。请帮忙!