달력

3

« 2024/3 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2007. 1. 7. 13:33

계산기로 구하는 제곱근 Math2007. 1. 7. 13:33

대학 4학년 통계 시간의 일이었다.
사용자 삽입 이미지

선우** 선생님께서 강의 도중 들었던 예의 표준편차 때문에 제곱근을 구할 필요가 있었다. 요즘이야 계산기가 거의 컴퓨터급이니 아무 문제가 없지만, 그때만 해도 그런 계산기는 너무 비싼 데다 별로 필요도 없어 대부분 평범한 가정용(?) 계산기만 가지고 있었다.

아무도 그 수의 제곱근을 대답하지 않아서, 내가 소수점 아래 한 자리까지 구한 근사값을 말했다. 그 방법은.... 제곱근을 대충 짐작한 다음, 두 번 곱해서 원래 수와 비슷한지 비교하는 것이었다.

선생님이 소수점 아래 두번째 자리를 물어보셨는데, 할 말이 있나. 사실대로 자백(?)을 했더니, 공학용 계산기라도 가지고 있는 줄 알았던 친구들은 모두 폭소. -_-

내가 중학생 때는 학교에서 제곱근을 손으로 구하는 방법을 가르쳤다. 보통 "개평법(開平法)"으로 불리는 것으로, "평"은 "평방(平方)"의 줄임꼴이고 이것은 "제곱미터"의 옛말인 "평방미터"의 바로 그 "평방"이다.

계산기가 없던 시절에야 모든 걸 손으로 해야하니 어쩔 수 없었겠지만, 지금같은 시대에는 별로 쓸모가 없어서 이제는 가르치지 않는다. 그러고 보니 더 옛날에는 세제곱근 풀이법인 "개립법(開立法)"도 가르쳤다니 그 당시 학생들은 얼마나 괴로웠을까.

아무튼 내가 계산기로 구했던 방법은 사실 수치해석의 "이분법"에 해당하는 것이었다. 제곱근 값이 존재하는 대략의 범위를 구한 다음 양 끝값을 제곱해서 원 값과 비교하고, 그 결과를 바탕으로 범위를 좁혀가는 것이다.

고작 이분법을 사용했으니 소수점 아래 두 번째 자리도 구하기 힘들었지만, 그때 조금 더 시간이 있었다면, 좀더 좋은 방법을 썼을 것 같다. 그 방법은 바로 Newton-Rhapson법.

a의 제곱근을 구하는 것은 y = x2 - a가 x축과 만나는 점을 구하는 것과 같다. 이 곡선 위의 아무 한 점을 잡는다. (x1, x12 - a)라 하자. 이 점에서 접선을 그려 x축과 만나는 점의 x좌표를 x2라 하자. 다시 접선을 그어 x3를 찾고, 다시 x4를 찾고....

이런 과정을 무한히 반복하면 원래 방정식의 근을 구할 수 있다. 이 방법에 따라 제곱근을 구하는 점화식을 쓰면 다음과 같다.

xn+1 = (xn + a/xn)/2
양쪽에 lim를 붙여보면 이 수열의 극한값이 a의 제곱근이 됨을 확인할 수 있다. 별 것 아닌 것 같지만, 이 방법은 꽤 효율적이어서 좋은 근사값을 금방 구할 수 있다.

다음은 2007의 제곱근을 구해 본 것. 452 = 2025니까, 대충 45에서 시작했다.
45.0000000000
44.8000000000
44.7995535714
44.7995535692
44.7995535692
44.7995535692
보시다시피 서너 번만 계산해도 아주 좋은 근사값이 나온다. 이것이라면 가정용 계산기로도 쉽게 제곱근을 구할 수 있다. 물론 MR,M+ 같은 메모리 기능을 모르면 좀 불편하겠지만.
반응형

'Math' 카테고리의 다른 글

Gauss 기호  (4) 2007.01.14
Pappus? Apollonius?  (5) 2007.01.13
Pythagorean Theorem  (9) 2007.01.05
analemma  (2) 2007.01.01
최익* 씨는 뭐하고 사나 했더니...  (6) 2006.12.21
:
Posted by puzzlist