溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

javascript基于牛頓迭代法如何實(shí)現(xiàn)求浮點(diǎn)數(shù)的平方根

發(fā)布時(shí)間:2022-05-17 11:43:37 來(lái)源:億速云 閱讀:144 作者:zzz 欄目:大數(shù)據(jù)

這篇文章主要介紹了javascript基于牛頓迭代法如何實(shí)現(xiàn)求浮點(diǎn)數(shù)的平方根的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇javascript基于牛頓迭代法如何實(shí)現(xiàn)求浮點(diǎn)數(shù)的平方根文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。

首先是牛頓迭代法原理:

比如我們要求a的平方根,首先隨便猜一個(gè)近似值x,然后不斷令x等于x和a/x的平均數(shù),迭代幾次后x的值就已經(jīng)相當(dāng)精確了。

如我們要求的數(shù)學(xué)假設(shè)為 a=7, var x=a;

( 7  + 7/7 ) / 2 = 3.64287514
       ( 3.64287514  + 7/3.64287514 ) / 2 = ?

下面是利用JavaScript實(shí)現(xiàn)

var G={
 result:0
 ,sqrt:function(a){
  var x=a;
  for(var i=0;i<=Math.floor(a);i++)
  {
  x=(x+a/x)/2;
  if(x-this.result===0){ //用來(lái)減少循環(huán)次數(shù)
   break;
  }
  this.result=x;
  document.body.innerHTML+="this.result-->"+this.result+"-->X:"+x+"<br/>";
  }
 }
};

運(yùn)行

G.sqrt(16)  : 結(jié)果為4
G.sqrt(2) : 結(jié)果為1.414
G.sqrt(100.2565)

當(dāng)然,網(wǎng)上對(duì)牛頓迭代法的算法好像還有其他實(shí)現(xiàn),讀者可以根據(jù)需要選擇適合自己理解的方法.

關(guān)于“javascript基于牛頓迭代法如何實(shí)現(xiàn)求浮點(diǎn)數(shù)的平方根”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“javascript基于牛頓迭代法如何實(shí)現(xiàn)求浮點(diǎn)數(shù)的平方根”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI