>  기사  >  웹 프론트엔드  >  JavaScript를 사용하여 부동 소수점 숫자의 제곱근을 찾는 방법에 대한 자세한 설명

JavaScript를 사용하여 부동 소수점 숫자의 제곱근을 찾는 방법에 대한 자세한 설명

小云云
小云云원래의
2018-02-01 09:21:032484검색

이 글에서는 주로 뉴턴의 반복법을 기반으로 부동 소수점 수의 제곱근을 구현하는 자바스크립트를 소개하고, 뉴턴의 반복법의 원리를 간략하게 설명하고, 필요한 예시를 바탕으로 자바스크립트의 재귀 수치 연산 관련 연산 기술을 분석합니다. 모두에게 도움이 되기를 바랍니다.

오늘 인터넷에서 뉴턴 반복 방법을 사용하여 부동 소수점 수의 제곱근을 구하는 방법을 보았는데, 일부 언어에서 제공되는 sqrt 방법보다 더 빠르게 실행됩니다. 나중에 사용할 수 있도록 여기에 백업해 두겠습니다. 몇 가지 사항이 변경되었습니다.

첫 번째는 뉴턴의 반복 방법의 원리입니다.

예를 들어, a의 제곱근을 구하면 먼저 대략적인 값 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/>";
  }
 }
};

Run

G.sqrt(16)를 사용하여 구현됩니다. 결과는 4

G.sqrt(2)입니다. : 결과는 1.414입니다. G.sqrt(16)  : 结果为4
G.sqrt(2) : 结果为1.414
G.sqrt(100.2565)G.sqrt(100.2565)

물론 인터넷에는 뉴턴의 반복 알고리즘을 다른 방식으로 구현한 것이 있는 것 같습니다. 독자는 다음과 같이 자신의 이해에 맞는 방법을 선택할 수 있습니다.

관련 권장 사항:

PHP에서 부정확한 부동 소수점 숫자 계산을 해결하는 예 공유

js 부동 소수점 숫자의 정확한 계산

js 부동 소수점 숫자 정확도 문제를 해결하는 방법

위 내용은 JavaScript를 사용하여 부동 소수점 숫자의 제곱근을 찾는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.