java 중 제곱근 (sqrt) 알고리즘의 실례 상세 설명

1641 단어 java제곱근
java 중 제곱근 (sqrt) 알고리즘
제곱근(sqrt, square root)은 수학에서 흔히 볼 수 있는 수학의 공식이다.
프로그램을 사용하여 제곱근을 구하는 것은 주로 두 단계로 나뉜다.
첫 번째 단계:while () 순환, 순환 횟수와 소수의 자릿수를 제어하여 무한 순환과 여러 소수의 발생을 방지한다.
두 번째 단계: 제곱근을 분해하고 순환을 사용하여 점차적으로 줄이고 제곱근에 가깝다.
같은 이치로 다른 방근도 유사하게 확장할 수 있지만 주의해야 할 것은
짝수 차방근은 정수를 입력해야 한다.
홀수 차방근은 정수로 전환하여 순환의 수렴을 확보하고 결과의 양과 음 판단을 해야 한다.
코드는 다음과 같습니다.

/* 
 * Algorithms.java 
 * 
 * Created on: 2013.12.03 
 *   Author: Wendy 
 */ 
 
/*eclipse std kepler, jdk 1.7*/ 
 
public class Algorithms  
{ 
  public static double sqrt(double c) 
  { 
    if(c<0) return Double.NaN; //NaN: not a number 
    double err = 1e-15; //  
    double t = c; 
    while (Math.abs(t-c/t) > err*t) //t^2 c,   
      t = (c/t + t)/2.0; 
    return t; 
  } 
   
  public static double cbrt(double c) 
  { 
    boolean b = (c>0) ? true : false; // c  
    c = (c>0) ? c : -c; 
    double err = 1e-15; 
    double t = c; 
    while(Math.abs(t*t-c/t) > err*t) 
      t = (c/(t*t)+t)/2.0; 
    t = (b) ? t : -t; 
    return t; 
  } 
   
  public static void main(String[] args)  
  { 
    double r = sqrt(4.0); 
    System.out.println("sqrt(4.0) = " + r); 
    double rc = cbrt(-27.0); 
    System.out.println("cbrt(9.0) = " + rc); 
  } 
} 
출력:

sqrt(4.0) = 2.0 
cbrt(9.0) = -3.0 
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!

좋은 웹페이지 즐겨찾기