很多人想运用麦克劳林公式,通过笔算将ln10精确到指定的数位,比如精确到十万分位。因为常用函数lgx的导函数1/(xln10)中,就含有ln10这个常数。因此在运用麦克劳林公式求常用对数的近似值时,免不了要求ln10的值。
不知道有多少人想当然的,认为运用ln(1 x)的麦克劳林公式,将x=9时的误差值限定在10^(-5)以内,就可以求得ln10精确度在十万分位的近似数。其实这样是行不通的。老黄就以探究的态度,给大家分析一下,为什么这样做行不通。
首先,明确麦克劳林公式:
ln(1 x)=x-x^2/2 …… (-1)^(n-1)x^n/n (-1)^nx^(n 1)/((n 1)(1 θx)^(n 1)), (0<θ<1, x>-1).
当x=9时,要使|Rn(9)|=|(-1)^n9^(n 1)/((n 1)(1 9θ)^(n 1))|=9^(n 1)/((n 1)(1 9θ)^(n 1))<10^(-5), 事实上是做不到的。这是因为9^(n 1)/((n 1)(1 9θ)^(n 1))的最小值是0.9^(n 1)/(n 1),要使0.9^(n 1)/(n 1)<10^(-5),就要取n=70. 况且无法保证|Rn(9)|取得最小值。只要|Rn(9)|的取值大于1/(n 1),就不存在任何n,使|Rn(9)|<10^(-5).
或许的确有|Rn(9)|<1/(n 1), 但就算那样,n也是极有可能要取到几百甚至几千那么大的,笔算起来也特别麻烦。因此这条路是行不通的。这里可以得出结论,只有当麦克劳林展开式的余项|Rn(x)|<a/(n 1)(a是常数)时,才有可能运用麦克劳林展开式求近似数。而且a越大,n的取值就越大。这也是麦克劳林公式逼近法的一个局限性吧。
那么ln10到底应该怎么运用麦克劳林公式来取近似数呢?老黄下面提供一个方法,和大家探究一下。其实也是挺麻烦的,但毕竟是可以做到的。
只要进行转换:ln10=10ln1.25 ln1.073741824,然后分别利用麦克劳林公式,求ln1.25和ln1.073741824的近似数就可以了。注意,ln1.25要精确到10^(-6)。
当x=0.25时,要使|Rn(0.25)|=|(-1)^n0.25^(n 1)/((n 1)(1 0.25θ)^(n 1))|<0.25^(n 1)/(n 1)<10^(-6),只要取n=9, 就有:
ln1.25约=0.25-0.25^2/2 0.25^3/3-0.25^4/4 0.25^5/5-0.25^6/6 0.25^7/7-0.25^8/8 0.25^9/9约=0.223144.
同理,当x=0.073741824时, 要使|Rn(0.073741824)|=|(-1)^n0.073741824^(n 1)/((n 1)(1 0.073741824θ)^(n 1))|<0.073741824^(n 1)/(n 1)<10^(-5),只要取n=4, 就有:
ln1.073741824约=0.073741824-0.073741824^2/2 0.073741824^3/3-0.073741824^4/4约=0.07115.
所以ln10约=10X0.223144 0.07115=2.30259.
以上老黄都尽量把n取大一点,以保证最后的结果的精确度,这个ln10的近似数,以后老黄肯定是要用到的。虽然现在有计算器,非常方便。但是数学计算的乐趣,并不是计算器所能够代替的。
,