Haskell 哈斯克尔的权力
我试图在Haskell中实现以下函数Haskell 哈斯克尔的权力,haskell,Haskell,我试图在Haskell中实现以下函数 p :: Float -> Int -> Float p x 0 = 1 p x n = x^(p x (n-1)) 我得到: 使用“fromIntegral”不会产生(Integral(Float->Int->Float))的实例 我是Haskell的新手。(**)可以用来获取浮点指数的幂 (^)仅适用于积分指数 2 ^ 2.1 --fails 2 ** 2.1 --works (**)可用于获取浮点指数的幂 (^)仅适用于积分指数 2 ^
p :: Float -> Int -> Float
p x 0 = 1
p x n = x^(p x (n-1))
我得到:
使用“fromIntegral”不会产生(Integral(Float->Int->Float))的实例
我是Haskell的新手。(**)
可以用来获取浮点指数的幂
(^)
仅适用于积分指数
2 ^ 2.1 --fails
2 ** 2.1 --works
(**)
可用于获取浮点指数的幂
(^)
仅适用于积分指数
2 ^ 2.1 --fails
2 ** 2.1 --works
(^):(数值a,整数b)=>a->b->a
。由于Float
不是Integral
类型类的实例,因此不能使用^
运算符将值提升为Float
类型的幂。谢谢您的回答<代码>(^):(数值a,整数b)=>a->b->a。由于Float
不是Integral
类型类的实例,因此不能使用^
运算符将值提升为Float
类型的幂。谢谢您的回答!