|
이 결과는 본 자료실 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
|