close
一般計算機如何算e的非整數次方
在算電子學的算式時,經常要用到「自然對數e」,要算(1)e的非整數次方,(2)非整數的ln若是在只靠一般計算機的情況下能不能算得出來?如計算e^21.739、ln(37.137)阿信~
自然對數ln=log以e為底 loge_A=lnA loge_37.137=ln 37.137= 3.6146--- e^x=1+x+(x^2/2!)+(x^3/3!)+---+(x^n/n!) ==>e^21.739=1+21.739+(21.739)^2/2!+---- +(21.739)^n/n!= 2755172821.28--- 2011-03-01 18:27:37 補充: 一般計算機沒此功能只能簡單計算數字 一切都要手算了 2011-03-01 18:54:47 補充: ln 37.137=log37.137/loge=1.5698/0.434=3.617 log37.137是特殊值只能用查表或工程計算機無法用手算 不是常用的log2,log3不給我們都記起來了,若不給沒差. loge=0.434要記
關於這個問題,我想了很久,發覺它是有方法的!一般計算機有12位有效數字,具有開根號功能。只要背下e=2.71828182846,就可以做後續的計算了。--------------------------因指數是可以拆解的,如計算e^21.739可拆解成:e^21*e^0.7*e^0.03*e^0.009如背下e^0.1然後計算機按xx======就得到e^0.7的值,不過這個方法要背好幾個值,不好用,且遇上小數很長的時候,誤差會變大。2011-03-0119:34:17補充:計算e^21.739,整數的部份很簡單,打出e的值2.71828182846,按xx20次=就得到答案。小數的部份0.739,要把它拆解成根號值,如平方根即是1/2次方,平方根的平方根即是1/4次方。利用1連除2的方式找到需要哪些平方根的值。2011-03-0119:34:38補充:0.739=1/2+0.239=1/2+0/4+0.239=1/2+0/4+1/8+0.114=1/2+0/4+1/8+1/16+0.0515=1/2+0/4+1/8+1/16+1/32+0.02025=1/2+0/4+1/8+1/16+1/32+1/64+0.004625=1/2+0/4+1/8+1/16+1/32+1/64+0/128+0.004625=1/2+0/4+1/8+1/16+1/32+1/64+0/128+1/256+0.000718752011-03-0119:34:51補充:故e^0.739=e^(1/2)*e^(1/8)*e^(1/16)*e^(1/32)*e^(1/64)*e^(1/128)*e^(1/256)*e^0.00071875把0.00071875當作誤差項忽略掉。此時誤差約在1/1000左右2011-03-0123:01:26補充:針對小數部份e^0.739的計算還可以再改善!將小數部份乘16,得到的商就是e^(n/16)。餘數再乘16,得到的商就是e^(n/256)…。做愈多次,則答案的誤差愈小。2011-03-0123:01:38補充:0.739*16=11.824<-n/16項=110.824*16=13.184<-n/256項=130.184*16=2.944<-n/4096項=20.944*16=15.104<-n/65536項=150.104*16=1.664<-n/1048576項=2<-最後一位四捨五入e^0.739=e^(11/16)*e^(13/256)*e^(2/4096)*e^(15/65536)*e^(2/1048576)2011-03-0123:02:26補充:算e^(11/16),計算機按2.7182818285464次√2次x10次=,得到1.98873746935,將它M+(儲存)。算e^(13/256),計算機按2.7182818285468次√2次x12次=,得到1.05209272264,按xMRC(取值)MRC(清值)=M+(儲存)。算e^(2/4096),計算機按2.71828182854612次√2次x1次=,得到1.00048840045,按xMRC(取值)MRC(清值)=M+(儲存)。2011-03-0123:03:50補充:算e^(11/16),計算機按2.718281828464次√2次x10次=,得到1.98873746935,將它M+(儲存)。算e^(13/256),計算機按2.718281828468次√2次x12次=,得到1.05209272264,按xMRC(取值)MRC(清值)=M+(儲存)。算e^(2/4096),計算機按2.7182818284612次√2次x1次=,得到1.00048840045,按xMRC(取值)MRC(清值)=M+(儲存)。2011-03-0123:11:02補充:算e^(15/65536),計算機按2.7182818284616次√2次x14次=,得到1.00022890772,按xMRC(取值)MRC(清值)=M+(儲存)。算e^(2/1048576),計算機按2.7182818284620次√2次x1次=,得到1.00000190732,按xMRC(取值)MRC(清值)=M+(儲存)。最後得到的值為2.09384129613,與小算盤程式算出的值2.0938406265983921731916189171036,誤差約0.32ppm。2011-03-0209:23:36補充:以上的的算法,即使是遇到一些特殊的數字如e^(57/113)或e^(√2)等,也可以很容易的求解。理論最大誤差比例為1-e^(0.5/1048576)的絕對值,約0.48ppm。2011-03-0214:12:08補充:計算ln(37.137),e^(x)=37.137。將37.137連除e直到小於e。計算機按37.137/2.71828182846===,得到1.84894235796,共按了3下=,因此整數項為3。ln(37.137)/(e^3)=1.848942357962011-03-0214:12:59補充:小數部份將前一個商數,除e^(1/16^n)|n=1~5,連除,直到小於e^(1/16^n)計算機按/,2.71828182846,4次√<-此時的值為1.06449445891。再連按=9次,直到小於1.06449445891的值為1.05349559952。n/16項為9。ln(37.137)/(e^3)/(e^9/16)=1.053495599522011-03-0214:13:41補充:計算機按/,2.71828182846,8次√<-此時的值為1.00391388933。再連按=13次,直到小於1.00391388933的值為1.00133341549。n/256項為13。ln(37.137)/(e^3)/(e^9/16)/(e^13/256)=1.001333415492011-03-0214:14:07補充:計算機按/,2.71828182846,12次√<-此時的值為1.00024417042。再連按=5次,直到小於1.00024417042的值為1.00011183043。n/4096項為5。ln(37.137)/(e^3)/(e^9/16)/(e^13/256)/(e^5/4095)=1.000111830432011-03-0214:14:47補充:計算機按/,2.71828182846,16次√<-此時的值為1.00001525889。再連按=7次,直到小於1.00001525889的值為1.00000501274。n/65536項為7。ln(37.137)/(e^3)/(e^9/16)/(e^13/256)/(e^5/4095)/(e^7/65536)=1.000005012742011-03-0214:15:00補充:計算機按/,2.71828182846,20次√<-此時的值為1.00000095366。再連按=5次,直到小於1.00000095366的值為1.00000024439。最後一項,比較商數1.0000024439是否大於e^(1/1048576)=1.00000095366的一半,若大於則本項加1,否則保持原值。n/1048576項為5。ln(37.137)/(e^3)/(e^9/16)/(e^13/256)/(e^5/4095)/(e^7/65536)/(e^5/1048576)=1.000000244392011-03-0214:30:49補充:1.00000024439誤差項忽略。ln(37.137)=3+9/16+13/256+5/4096+7/65536+5/1048576計算機按:先清除記憶值MRCMRC3,M+,9/16=,M+,13/256=,M+,5/4096=,M+,7/65536=,M+,5/1048576=,M+MRC取值得到3.61461353302與小算盤程式的值3.614613777217782905033826745074比較,誤差2.44*10^-7=0.244μ此方法的理論最大誤差為0.5/1048576=4.7*10^-7=0.47μ要用到數值方法但是很複雜沒有實用價值To:小綿羊(專家3級)>ln37.137=3.6146工程計算機直接按就行,但您沒回答我,如何用一般計算機按出來~一般計算機沒有e、log或ln的功能。>e^x=1+x+(x^2/2!)+(x^3/3!)+---+(x^n/n!)這是e的基本定義,我算到了x^5,其誤差還在8.5%左右,若要求到前三位有效(誤差1/1000以下),至少要算到x^12,這樣也算太久了吧!
以上文章來自奇摩知識家,如有侵犯請留言告知
https://tw.answers.yahoo.com/question/index?qid=20110228000010KK10695