上面只是说到整指数,如果指数是小数,情况就复杂多了,
有一种方法是先把小数化成分数
如2的1.2次方就等于2的5分之6次方,等价于2的6次方,再开5次方,yroot(5,2^6) =2.2973967099940700135972538935559
这个方法缺点很大,如2^0.1111111111111111等于2的10000000000000000次方,然后再开1111111111111111次方
这么大的乘方,开方,效率低下,而且难以实现,没有这么大的高精开N次方程序,
不过有了这个公式 :(1+z)^α=1+αz+α(α-1)z^2/2!+α(α-1)(α-2)z^3/3!+…+ [α(α-1)…(α-n+1)]z^n/n!+…,|z|<1
这个公式有一个难点,底数的大小要接近1。
我的方法如下:例:123.45^67.891
123.45^67.891可分为(1.2345^67.891)*(10^2)^67.891=(1.2345^67.891)*(10)^(2*67.891)
高精度乘方二
最新推荐文章于 2024-03-27 12:55:39 发布