小编Sta*_*eta的帖子

没有使用'rem'产生的(Integral Double)实例

Haskell"没有实例"错误

Haskell错误:"没有实例(Enum [Int])

函数定义问题(没有...的实例)

字符"1"中没有Num字符串的实例

我是Haskell的新手,也是一般的函数式编程.另外,我知道上面的问题非常相似,但我无法在任何地方找到解决问题的方法.以下代码用于查找数字输入的因子:

fc4 :: Double -> IO ()
check :: Double -> Double -> IO ()
fc4 a = check a (sqrt a)
check a b = if rem a b == 0 then print (b, div a b) else print () >> if b > 1 then check a (b-1) else putStrLn ("Done.")
Run Code Online (Sandbox Code Playgroud)

我尝试使用每种可能的组合切换DoubleInteger和返回,但每个都失败并出现相同的错误:

No instance for (Integral Double) arising from a use of 'rem'
Run Code Online (Sandbox Code Playgroud)

我也试过明确地使用fromIntegral和 …

haskell

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

标签 统计

haskell ×1