標籤:

如何筆算出ln2?

最好是能用高中數學知識求得,精確4,5位就可以


樓上兩位說的當然是對的,但是收斂太慢了,算到精確到4,5位要算很多項才行。

給一個收斂稍微快一點的。

ln(1+x)=sum_{n=1}^{infty}{frac{(-1)^{n+1}x^{n}}{n}}

ln(1-x)=sum_{n=1}^{infty}{frac{-x^n}{n}}

兩式相減,消掉一些項,然後得到

ln(frac{1+x}{1-x})=sum_{n=1}^{infty}{frac{2x^{2n-1}}{2n-1}}

帶入x=frac1 3即可,這個收斂的截斷誤差是指數階的,算幾項就能精確到4,5位了。

不過這樣需要假設高中生理解那個級數。。有點難度。。

如果考慮一般高中生的水平,手算能用的函數恐怕僅限有理函數了。這時可以考慮認為ln(2)是1/x在[1,2]上的積分,那麼就可以按照黎曼和的方式寫出公式來,不過這個比起上面的方法就差遠了。。


高中生除了 @王箏 提到的轉化成黎曼和的方式之外沒有別的辦法了。但是在大學,轉化成定積分之後有更好的方法。

1.辛普森公式:

int_{a}^{b} f(x) , dx approx frac{b-a}{6}left[f(a) + 4fleft(frac{a+b}{2}
ight)+f(b)
ight]

也就是說

ln2=int_{1}^{2} frac{dx}{x}  approx frac{1}{6} left[ 1+4	imes frac{2}{3} +frac{1}{2}  
ight] =frac{25}{36}

用計算機檢驗誤差:

ln2-25/36=-0.00129

只有3位,怎麼辦呢?沒關係,我們可以等分區間,然後對兩側的區間分別應用辛普森公式,再加起來。

ln2=int_{1}^{1.5}frac{dx}{x} +int_{1.5}^{2}frac{dx}{x}  approx frac{1}{6} left[ 1+4	imes frac{4}{5}+frac{2}{3}+frac{2}{3}+4	imes frac{4}{7} +frac{1}{2}    
ight] =frac{1747}{2520}

這次的誤差就足夠小了

2.另外,還可以直接用科特斯公式

計算,結果應該更準確。


當時在考場上做這一個問做了半個小時並且沒做出來的路過…感覺答案不是人能想出來的…詳情請參見吉林省2014年數學高考題最後一題最後一問…


我勒個擦,黎曼級數辛普森都是高中知識嘛? 給樓上那些高中就會黎曼,級數以及辛普森公式的大神跪爛了...

弱渣提供一個「正常」高中中學生知識範圍內的解法,親民易懂,只需要明白導數就OK

牛頓迭代:

設個方程,y=e^{x} -2,求ln2等價於求這個方程的零點

隨便取一點A做切線,得到其與X軸的交點B,然後對B點重複上述操作就OK了

Theta_{1}=  Theta_{0} - f(Theta_{0}) / f

Theta_{2}=  Theta_{1} - f(Theta_{1}) / f

Theta_{3}=  Theta_{2} - f(Theta_{2}) / f

……

1. 起始點隨便取,定義域內就OK。

2. 迭代四五次以後就會收斂,小數點後四五位的話,大概需要迭代十幾次吧。


高中化學競賽知識——ln10 = 2.303,lg2 = 0.301

後面還用我說嘛?換底啊

其實高中化學競賽也有這樣一條——ln2 = 0.693


鑒於之前的答案玩樂為主,不符合貴乎一貫的發展要求、前進方向,作為一個死理性派,看著這一坨各種泰勒展開 blahblah 給少不更事的高中生算,——怎麼可以這樣。於是祭出許多年沒用的兵器——草稿紙跟筆,大體上算了一下,感覺應該再寫出來給各位圍觀,順便 AT 各位覺得原答案沒有幫助的,瞅瞅新來的答案再判刑?

(以下演算法力求通俗易懂,覺得看不懂的請拿鹹鴨蛋扔過來,——微山湖的最好 XD)

由於 e 是個該死的無理數(小數就夠煩人了),又由於,假設大家都知道換底公式,或者

ln 2 = frac{1}{log_2 e}

所以我們決定先去算 log_2 e 了。事實上,以下方法對付以二為底的對數還是比較好用噠,——所以理論上換個底所有對數都可以這樣算了(咦似乎「發明」了一種很神(dou)奇(bi)的本領我是不是很棒 ^w^)

首先讓我們假定,大家已經知道了以下事實:

egin{cases}
sqrt{2} = 1.41421356237,\
sqrt[4]{2} = 1.189207115,\
sqrt[8]{2} = 1.090507733,\
sqrt[16]{2} = 1.04427378,\
sqrt[32]{2} = 1.02189715,\
cdots
end{cases}

如果你還不知道,戳這裡:開2次方可以手算,但開n(n&>2)次方有手算的方法嗎? - LiTuX 的回答

然後呢,我們執行下面的演算法:

* step 0, let a:=2, k:=sqrt{2}, r:=1, d:=0.5;

* step 1, compare a and e, if |a-e|le 10^{-4}, finish; Otherwise, if a<e, go to step 2; if a>e, go to step 3;

* step 2, let a:=a*k, r:=r+d, k:=sqrt{k}, d:=ddiv 2;, go to step 1;

* step 3, let a:=adiv k, r:=r-d, k:=sqrt{k}, d:=ddiv 2, go to step 1;

finish,r is now log_2 e and of course ln 2 = frac 1 r.

作為一個給計算機用的演算法,上面這個東西簡直簡單粗暴有(di)效,不過人這麼聰明是吧,演算法雖然這麼寫,也可以耍耍小聰明的嘛 ^w^,來大家看看我現在是怎麼算的:

先列一個 2 的依次根號迭代出來的數表備用(咳咳,我先用計算器算了,手算太慢 T T),然後:

+ e div 2 approx 1.359,接近 sqrt{2},乘以 sqrt{2},對應近似值 r approx 1.5;

+ 2sqrt{2} div e approx 1.04052,接近 sqrt[16]{2},除之,對應近似值 r approx 1.4375

+ e div (2sqrt{2} div sqrt[16]{2}) approx 1.0036,接近……sqrt[256]{2} 	imes sqrt[1024]{2}	imes sqrt[2048]{2},乘之,對應近似值 r approx 1.44287109375,對應 ln 2的近似值為 0.69306260575296(才擦著四位!我這一口老血!!)

好吧,逗比方案簡單!!粗暴!!誰用這個方法算我喊他濕傅!

[2015.05.05-20:18 更新完]

======== 原逗比答案 =========

我來講一個「悲傷」的故事……

初中的時候,因某種原因,流行過一系列的(多功能)科學計算器,各種牌子的、橫的豎的黑的銀的 blahblah,用兩顆鋅銀電池(AG10)供電,提供常用函數計算、簡單的統計功能等……主晶元共有 36 跟引線出來,其中兩根接電源,(主要有)三根提供各種不同功能的引線(當然要跟其他線搭配),四根類似行掃描的顯示線,以及 24 根(這個數字記不太清了)類似列掃描的顯示線,其中有十一根(也記不太清了)復用做功能開關。

(別問我為什麼知道這麼詳細,當年我還記得哪根跟哪根連起來是什麼功能你信不信[此處請腦補暴漫的扶額表情])

這種計算器呢,大部分函數啊計算啊的,是直接針對屏幕上顯示的數字執行的,於是在當年無聊作死的時候,試過各種「奇思妙想」,比如解個簡單的方程啊、找個不動點啊什麼的(後來才知道很多是他喵的迭代啊摔!)

然後有一天無聊,心說自然數倒數求和(嗯!就是高中才知道名字的調和級數!)不是據說什麼數都能算出來喵?我要不要試一試……

然後就是作死的算了半天……結果怎麼樣你們猜?

當然是他喵的越來越慢啥也看不出來撂挑子不幹了啊摔!(幸好還沒腦殘到一定要算下去[暴漫捂臉苦笑表情])

然後轉念一想,咦要是一個用加一個用減的算,會出來個啥?(當我學到正向級數跟交錯級數的時候,瞬間覺得當年的想法帥爆了!)

於是又花了一個下午的時間在算……(來繼續猜我看到了啥 ^_^ )

毛線啊!啥**玩意兒啊!白算了這一天……

咦等等,剛剛算的時候一會兒大一會兒小,現在前面幾位已經不變了哎(我是不是離發現什麼不遠了)

又摁了半天,前面穩定下來的幾位半天不見增長……於是靈機一動,要不把一大一小取個平均得了,應該能比較接近吧。

取完平均,盯著 那個 0.693147xxx 盯了半天,沒覺得之前曾經見過……然後挨個兒試,妄圖發現些什麼,在按下 exp 指數函數的按鍵之後,感覺自己發現了新大陸,——

雖然數值不精確,但「小心求證大膽假設」之後,我認為,那個加減交錯的東西算到最後,結果應該等於 ln 2。(很多年之後,當我看著數分課本上 ln(1+x) 的展開式,無奈的笑了)

########### 分割線 ############

故事講完了,所以我是要說什麼呢?——暴力算那個級數其實也沒多費勁嘛!(尤其是如果我們截斷兩個再求平均 XD)i.e.,

2*ln 2 approx (1/1-1/2+1/3-1/4+...+1/n) + (1/1-1/2+1/3-1/4+...+1/n - 1/(n+1) )

@LiTuX 真實經歷

註:

------------

1. 計算器提供的隨機數(在我還以為隨機是「隨著機器」的意思時),[2nd f] + [.],範圍是 0.000 - 0.999,我試了好幾年才知道這是個左閉右開的區間,只有 0 沒有 1;

2. 它只能算到 69 的階乘是因為裡面的科學計數法指數只能有兩位數字;

3. 我一直以為 -1 真的就是 11111111...111 直到我學了 C 語言;

4. 別懷疑,那個交錯級數我最後真的算了差不多一千多項,——當然不是一節課算完的!

5. 逗比的當年不需要解釋,我覺得如果沒搬家,當年那些折騰「計算器小型化」的手稿還能找得到(就算搬了也很有可能還隱藏在某個角落裡);

6. 以及後來在高中的時候,設計過幾種不同的「液晶屏」顯示方案,——要麼把現在用的八塊的方式減少一些,要麼增加點兒別的什麼讓它顯示字母。

7. 當然還有,八塊液晶(除了小數點之外還剩七塊啦)顯示 26 個拉丁字母外加部分希臘字母的方案我也弄過……

(我真特么無聊[扶額])


實際中,ln2 ≈ 0.693 是一個很常見的數值。

普通公眾應當了解,至少求半衰期要用到。


用泰勒公式展開成級數和


說段初中黑歷史

那時候學校組織我們買Casio的高級計算器,記得好像是90塊錢

有一天上數學課,突然靈感來了(shen

you),想到兩個相鄰的數,大的平方減小的平方,等於這兩個數的和!當時我就尿了,牛頓的蘋果砸我腦袋上了?!於是拿Casio擺弄了一節數學課,發現我靠沒錯啊!我tm就是天才啊,結果後來做操還煞有其事的和數學課代表討論(che dan),接著,我就非常大膽的走向老師辦公室,早已YY好初中少年驚天數學大發現名震中國。

然後我廢了一大堆話和老師闡述我的定理,他很鼓勵的拍了拍我的肩膀,不錯,可惜你不是第一個發現的。

再後來呢,我學了方差公式…


果斷泰勒公式啊,還可以估計誤差,豈不妙哉。


其實這是2014年全國新課標卷二的壓軸題的最後一問。題主赤裸裸地提出這樣一個問題,高中生裡面沒有接觸過數分的人多半難以下手。還好這是一道高考題,作為21題的第三問,前面的鋪墊出題的人已經跟你做得很好,並且第三問中也直接給出了根號2的估值區間,這裡把答題過程給大家分享一下。同時想說明,課標卷的壓軸題並不會突兀得高不可攀,前後聯繫很重要,出題老師也是很貼心噠~

Ps:個人認為第二問用分離參數做也是棒棒噠!


Ln2=1-frac{1}{2}+frac{1}{3}-frac{1}{4}cdotcdotcdot


ln(x) 有另外一種定義方法: ln(x)=int_{1}^{x}frac{1}{t}dt ,於是我們可以設法算出反比例函數下方的面積,如圖所示。

y=frac{1}{t} 圖象下方,區間[1,x]的位置無窮分割等底的矩形(如橙色區域所示),那麼

ln (x)=sum_{n=1}^{x-1}sum_{m=1}^{infty}frac{n}{mx(mx-n)}(xin N_+)

於是 ln(2)=frac{1}{1*2}+frac{1}{3*4}+frac{1}{5*6}+frac{1}{7*8}+frac{1}{9*10}+...

假如分割不取無窮大,結果是始終小於 ln(x) 的。

y=frac{1}{t} 圖象上方,區間[1,x]的位置無窮分割等底的矩形(如黃色區域所示),那麼

ln (x)=sum_{n=1}^{x-1} left [ frac{1}{n} - sum_{m=1}^{infty}frac{n}{mx(mx+n)} 
ight ](xin N_+)

於是 ln(2)=1-frac{1}{2*3}-frac{1}{4*5}-frac{1}{6*7}-frac{1}{8*9}-frac{1}{10*11}-...

假如分割不取無窮大,結果是始終大於 ln(x) 的。

然後我們對兩種計算方法求平均數。

兩種求和方法中,如果第一種分割方法的m值比第二種分割方法的m值多1,那麼最後求得的平均數就表示如圖所示紅色的直角梯形的面積和。

很明顯直角梯形的面積和是大於 int_{1}^{2}frac{1}{t}dt 的,但是已經很接近 int_{1}^{2}frac{1}{t}dt 了。


ln2=1/lbe,e取前四位2.718

lb2.718=lb(2^1*1.359)

=1+lb1.359

=1+0.25lb(1.359^4),其中括弧內取前四位為3.411

=1+0.25lb3.411=1+0.25lb(2^1*1.7055)

=1+0.25+0.25lb1.7055

=1.25+0.125lb(1.7055^2)

約=1.25+0.125lb2.909

=1.375+0.125lb1.4545

lb1.4545大於根號二,取值1(也可以估更確切的值)

lb2.718約等於1.5,代回去得ln2約為0.6667

實際計算有ln2=0.693

這是我自己發現的方法。


泰勒展開以後用童哲校長安利的香克斯大法


高中應該會級數了吧。。。。


記得這個題是我們去年高考最後一道大題最後一問,等我上大學後才發現這個題用泰勒神馬的真簡單啊


這其實是數學分析書上的一道例題,用的方法也是王箏大神的,這樣收斂速度較快。


高中知道自然對數的底數大概是多少的人就不多吧


樓上捉急,高中生哪裡會泰勒級數展開啊,由於InX是單調增的,直接2分法,in2大於0小於1於是取0.5,算e的0.5次方大於2還是小於2。小於2應該在0.5到1於是再取0.75。反之0.25。

問題是e的0.5次方即根號e怎麼算,其實不用算,因為e是小於4的。所以根號e小於2,得出結果應該是大於0.5的,於是用0.75,由於e的x次方單調增的,e的0.75次方和2比大小,可以比較e的三次方和2的4次方的大小。一直迭代到需要的精度,貌似不是太難算。


2分法啊 ,ln2,就從(0,1)開始分吧,看ln2-0.5大於0小於0,然後一步一步取下去,4,5位不難算。

--------------------

手算了一下,發現這樣算精確到4,5位還是蠻難的,大概只能精確到誤差1/16


推薦閱讀:

如果中國一直沒有接觸到西方的科學,而是基於本土傳統學術獨立發展,會發展成什麼樣?
數學學習中的遺忘?
時間域麥克斯韋方程組轉換為頻率域麥克斯韋方程組的過程中時間偏微分商的轉換問題?
n維空間里的n個向量的最小夾角的最大值是什麼?

TAG:數學 |