【发布时间】:2016-09-05 18:22:57
【问题描述】:
我在 Haskell 中有以下代码:
powmod base 1 m = mod base m
powmod base exp m | even exp = mod (pow2 * pow2) m
| otherwise = mod (base * powmod base (exp - 1) m) m
where
pow2 = powmod base (div exp 2) m
part1 j n 0 = 0
part1 j n k = (part1 j n (k-1)) + (powmod 16 (n-k) r)/r
where
r = 8*k+j
代码在 ghci 上加载没有任何问题。当我尝试将函数 part1 调用为:
part1 4 10 4
我明白了:
没有因使用
it' The type variablea0' 而产生的 (Fractional a0) 实例不明确注意:有几种可能 实例:实例积分 a => 分数 (GHC.Real.Ratio a) -- 在GHC.Real' instance Fractional Double -- Defined inGHC.Float' 实例中定义 Fractional Float -- 在GHC.Float' In the first argument ofprint' 中定义,即'it' 交互式 GHCi 命令:打印它
我不明白这个问题。任何帮助都会很棒。谢谢
【问题讨论】:
标签: haskell