如何不用对数表求任意一个以10为底的常用对数的近似值?
发布网友
发布时间:2022-04-22 11:50
我来回答
共5个回答
热心网友
时间:2023-11-03 17:53
楼主都学了微积分了,居然还在考虑不用表不用计算器非得手算的问题。魂淡啊,楼主难道连一台科学计算器都买不起吗!
把lg(x)=ln(x)/ln(10)。所以其实我们算ln(x)就行了。
根据泰勒展开式:
ln(1+x)=x-x²/2+x³/3-...+(-1)^n·x^(n+1)/[(n+1)(1+θ)^(n+1)],0<θ<1
所以近似计算方法就是:(举例要算lg2)
ln(1+1)=1-1/2+1/3-...
根据展开式的最后一项根据精度求出n,加到(-1)^(n-1)/n
得到的就是ln2的近似值,而ln(10)≈2.3026。二者相除,就算出了lg(2)。
不过我会告诉你要想达到比较高的精度,你用泰勒展开,至少要连续累加一万多项吗!
热心网友
时间:2023-11-03 17:53
这个问题确实需要用微机分来解答,既是泰勒公式的运用,但也不是简单的一个泰勒公式就可以解决的。
lg(1+x)=ln(1+x)/ln(10)
上面是将用ln(1+x)在x=0处展开,这个函数在x=0处的导数是非常简单的,不是无理数,其他的就说不定了。
ln(1+x)≈x-(1/2)*x^2+(1/3)*x^3-(1/4)*x^4+(1/5)*x^5
然后分别用上面的式子算出ln(1+x),和ln(10)
可惜上面的式子算出来的答案总是与真值偏的太远。
可以看这个例子http://zhidao.baidu.com/question/536563755.html?from=pubpage&msgtype=2
然后就构造另外的函数
ln((1+x)/(1-x))=ln(1+x)-ln(1-x)≈2*x+(2/3)*x^3+(2/5)*x^5=f(x)
然后用上面的式子求就行了,这个式子能够保证精度。虽然是一个计算题目,一台计算器能够轻松搞定,不过一种方法远远不止用在这么一个地方,那些工具只能帮助我们学习,但是永远不能代替我们的学习。
最后总结一下
(1+x)/(1-x)=10,x=9/11,ln(10)≈f(9/11)=2.148161762,实际f(10)≈2.3
因为9/11偏离0太远了,注意定义域(-1,1)很窄的。所以ln(10)记住取2.3
lg((1+x)/(1-x))≈(2*x+(2/3)*x^3+(2/5)*x^5)/2.3
要先解出x的。注意!
注意x偏离0余元越不精确,所以越偏离0,项数越多越好。
热心网友
时间:2023-11-03 17:54
ln=以e(=2.71828)为底的对数,以10为底的对数lg(x)=ln(x)/ln(10)=ln(x)/2.3
ln(1+x)≈x-(x^2)/2+……+[(-1)^n][x^(n+1)]/(n+1) ;对数(1+x)泰勒级数是仅用于x^2<1
在一般x>0,
设a=(x-1)/(x+1)
a^2<1,泰勒级数
ln(1+a)≈a-(a^2)/2+(a^3)/3-……+[(-1)^n][a^(n+1)]/(n+1)
ln(1-a)≈-a-((-a)^2)/2+[(-a)^3]/3-……+[(-1)^n][(-a)^(n+1)]/(n+1)
x=[1+(x-1)/(x+1)]/[1-(x-1)/(x+1)]=(1+a)/(1-a),
lnx=ln(1+a)-ln(1-a);
lnx≈2[a+(1/3)a^3+(1/5)a^5+...], x>0;a=(x-1)/(x+1)
以10为底的对数lg(x)=ln(x)/ln(10)=ln(x)/2.3, ln=以e(=2.71828)为底的对数
热心网友
时间:2023-11-03 17:54
用泰勒公式(或泰勒级数)。
给你一个︱x︱<1时的自然对数的计算公式,行吗?
ln(1+x)≈x-(x^2)+……+[(-)^n][x^(n+1)]/(n+1)
注意:这个公式中,不可令x=1。科学发簪观给的计算ln2的方法是错的。用这个公式计算时,x的绝对值越小公式的优越性越好。
热心网友
时间:2023-11-03 17:55
为什么现在的人都着M属性,好好地有计算机,干嘛这样,否则计算机有什么用,你让人家计算机情何以堪。人家兢兢业业也就为了算几道题目,你连这样的机会都不给人家,唉追问计算机谁不会用,问题是考场上不会让你用计算机呀