수학맨 자료실

 번호: 3 작성일시: 2005-11-17 17:37:22 (211.219.166.180)
제목    원주율 계산 프로그램 결과 분석
이름    족구황제 조회 : 2133  


이 결과는 본 자료실 1번2번에 올린 java 파일을 이용한 것이며, 이를 컴파일, 실행할 수 있는 기초 지식에 대해서는 여기서 설명하지 않음을 이해하기 바란다.
소스 코드는 어렵지 않기 때문에 프로그래밍 경험이 있다면 다른 언어로 포팅하는 것도 어렵지 않을 것이다.

본 자료실 1번과 2번에 올린 두 개의 java 파일을 이용하여 아래와 같은 결과를 얻을 수 있다.

16 arctan(1/5) 은 75번째 항에서 수렴.

A = 16 arctan(1/5) =
 3.15832 89575 98092 13392 07962 43116 64469 51613 61660 60563 36242 83023 04385 65435 19651 90057 17231 65248 59660 87058 02054  (소수 105자리)

4 arctan(1/239) 은 23번째 항에서 수렴.

B = 4 arctan(1/239) =
 0.01673 63040 08298 89545 81528 59837 14181 09641 92261 23052 78033 08078 45154 87271 13365 69157 30951 30423 25449 16378 19905  (소수 105자리)

A - B =
 3.14159 26535 89793 23846 26433 83279 50288 41971 69399 37510 58209 74944 59230 78164 06286 20899 86280 34825 34211 70679 82149  (소수 105자리)

결과 부연 설명: 75+23 = 98. 즉, 마지막 결과값에서 끝의 5자리에서 98을 더하거나 빼도 82xxx이므로, 위 결과에서는 소수 102자리까지는 참값이다.

실제 원주율 값은 소수 101자리부터의 값이 82148...이다.

만일, 소수 1000자리까지 구하고자 한다면...

MainTest.java 파일에서 아래 부분의 값을 적당히 수정하면 된다.

public static int RANGE = 106; // 소수 몇 자리까지(0: 정수 부분, 1~: 소수점 뒤)

위 부분에서 106을 1006 정도로 바꿔주고 실행하면 된다.

또한, 이 프로그램은 알고리즘 이해를 돕기 위해 쉽게 코딩되었으며, 최적화를 하면 더 빠른 결과를 기대할 수 있다.

관련 링크:
원주율 계산 알고리즘 - http://mathman.kr/math/pi.htm
원주율값 보기 - http://mathman.kr/math/pi_digit.htm




HOME