您好,登錄后才能下訂單哦!
這篇文章主要介紹了javascript基于牛頓迭代法如何實現求浮點數的平方根的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇javascript基于牛頓迭代法如何實現求浮點數的平方根文章都會有所收獲,下面我們一起來看看吧。
首先是牛頓迭代法原理:
比如我們要求a的平方根,首先隨便猜一個近似值x,然后不斷令x等于x和a/x的平均數,迭代幾次后x的值就已經相當精確了。
如我們要求的數學假設為 a=7, var x=a;
( 7 + 7/7 ) / 2 = 3.64287514
( 3.64287514 + 7/3.64287514 ) / 2 = ?
下面是利用JavaScript實現
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){ //用來減少循環次數 break; } this.result=x; document.body.innerHTML+="this.result-->"+this.result+"-->X:"+x+"<br/>"; } } };
運行
G.sqrt(16)
: 結果為4G.sqrt(2)
: 結果為1.414G.sqrt(100.2565)
當然,網上對牛頓迭代法的算法好像還有其他實現,讀者可以根據需要選擇適合自己理解的方法.
關于“javascript基于牛頓迭代法如何實現求浮點數的平方根”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“javascript基于牛頓迭代法如何實現求浮點數的平方根”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。