팡펑퐁 2022. 10. 20. 18:45
728x90

바빌로니아 법(The Babylonian Method)

 임의의 수의 제곱근에 빠르게 수렴하는 수열을 만들어 근사값을 구하는 방법

=> 제곱근을 구하는 점화식을 코드로 구현

 

static double sqrt(int num) {
		int PRECISION_COUNT = 10; // 임의의 자연수로 이 값이 클수록 더 정확한 근사값을 구할 수 있다.
		double x = num / 2.0;

		for (int i = 0; i < PRECISION_COUNT; i++){
				x = (x + (num / x)) / 2;  
                // xn+1 = (xn + (num / xn)) / 2 
		}
		return x;
	}

 

 

728x90