この記事では、ニュートンの反復法に基づいて浮動小数点数の平方根を実現するための JavaScript を主に紹介し、ニュートンの反復法の原理を簡単に説明し、それを必要とする JavaScript の再帰数値演算の関連操作スキルを分析します。皆さんの参考になれば幸いです。
今日、浮動小数点数の平方根を求めるニュートン反復法を使用するメソッドをインターネットで見ました。これは、一部の言語に付属する sqrt メソッドよりも高速に実行できることがわかりました。後で使用するために、ここで少し変更します。
1 つ目は、ニュートンの反復法の原理です。
たとえば、 a の平方根を求める場合、まず近似値 x を推測し、その後、x を x と a/x の平均に等しくします。x の値はすでにかなり正確です。 たとえば、必要な数学的仮定は、a=7、var x=a;( 7 + 7/7 ) / 2 = 3.64287514 ( 3.64287514 + 7/3.64287514 ) / 2 = ?
..
です。 .
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.414 G.sqrt(16)
: 结果为4G.sqrt(2)
: 结果为1.414G.sqrt(100.2565)
G.sqrt(100.2565)
もちろん、インターネット上にはニュートンの反復アルゴリズムの他の実装もあるようです。読者は、自分の理解に応じて、適切な方法を選択できます。
関連する推奨事項:
以上がJavaScriptを使って浮動小数点数の平方根を求める方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。