中值定理法(開平方算法)_第1頁
已閱讀1頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、最快的開平方算法(中值定理法)作者:李義2006關鍵詞:最快開平方根算法中值定理開方整數(shù)平方數(shù)中值定理:設a、b、c為順序排列間距為P的3個整數(shù)A、B、C是它們的平方則有:b2=(a2c2)2R即:B=(AC)2R其中:修正值R=P2特別地如果間隔P=1、2、4、8、16、…2n(或Pn=2Pn1)時則:修正值R=1、4、16、64、256、…22n(或Rn=4Rn1)證明:已知:a=bPc=bP有:a2=(bP)2=b22PbP2c2

2、=(bP)2=b22PbP2則:a2c2=2b22P2即:b2=(a2c2)2P2特別地當:間隔P=2n=22n1=2Pn1時(n為自然數(shù))則:修正值R=P2=22n=(2Pn1)2=4(Pn1)2=4Rn1(證明完)根據(jù)以上定理可以實現(xiàn)整數(shù)快速開平方根計算:先構建一個長度為N的數(shù)組1:數(shù)組長N=Ni112345…間隔P=2Pi2481632…修正值R=4Ri416642561024…以及一個對應2PN(這里N=4、2PN=32)的典型

3、數(shù)和它的平方數(shù)組2:按N=4間隔排列的數(shù)d=di2PN326496128160192224256…該數(shù)的平方D=d21024409692161638425600368645017665536…顯然N值越大則數(shù)組2越小、程序代碼效率越高、用時(插值次數(shù))越多.以2字節(jié)整數(shù)開方為例的計算流程如下:其中被開方數(shù)D(范圍0~65536)其平方根d(范圍0~256)注:1、查表可以從任何位置開始對計算速度影響不大.其中D=0、D=1、D=Di、D

4、65280判斷可以省去.特別地如果把間隔P加大到128對應修正值R=13684則循環(huán)次數(shù)N=7對應數(shù)組2就簡化到:按N=7間隔排列的數(shù)d=diPn0256512…該數(shù)的平方Di=dd065536262144…這時對于兩字節(jié)數(shù)被開方數(shù)D來講查表環(huán)節(jié)也可省去程序代碼大幅減少計算流程如下:C語言程序的一個例子:unsignedabp=0x80unsignedintKABCR=0x4000D=60000sqt1()dob=apB=CB=1if(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論