【发布时间】:2017-04-04 09:16:34
【问题描述】:
我写了一个用底数 b 和指数 e 求幂的函数,如下所示:
fun power b e = if e = 0 then 1 else b * power b (e-1);
显然这适用于整数,如输出所示:
val power = fn : int -> int -> int
但是,我希望它对 b 采用实数,对 e 采用整数。我尝试使用以下内容:
fun power (b : real) (e : int) = if e = 0 then 1 else b * power b (e-1);
这给了我错误。任何帮助表示赞赏。
【问题讨论】:
-
顺便说一句,如果你真的要实现这个,你可能想使用exponentiation by squaring,而不是线性乘以
be次