close_btn
  • ※ 현재 페이지의 QR 코드


  • ※ 사이트 내부 통합검색


  • ※ Paypal 기부하기
    ※ 카카오페이로 기부하기
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

1. 일반 계산기로 1.11.7 을 계산하려면?

  1. 1.1^1.7 = 1.1^(1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1) 
  2. 1.식을 다시 쓰면 1.1 * (1.1^0.1) * (1.1^0.1) * (1.1^0.1) * (1.1^0.1) * (1.1^0.1) * (1.1^0.1) * (1.1^0.1)
  3. 결국은 1.1^0.1 값을 알아내면 계산이 가능하다는 결론

 

2. 일반 계산기로 1.10.1 을 계산하려면?

"일반계산기로 n제곱근을 구하는 것은 뉴튼-랩슨법으로 가능하다"고 예전에 살펴보았습니다. 
http://www.allcalc.tk/2629

1.1^0.1 값을 뉴튼-랩슨법으로 반복계산해 보겠습니다. 
(초기값은 쉽게 추정하기 어려우니, 그냥 1.1 로 하겠습니다)

1회차 결과 1.036650738   (오차율 2.68 %)
2회차 결과 1.01254671931 (오차율 0.29 %)
3회차 결과 1.00961548338 (오차율 3.85E-3 %)
4회차 결과 1.00957658945 (오차율 6.61E−7 %)
5회차 결과 1.0095765827  (오차율 7.62E−9 %)
6회차 결과 1.00957658269 = 7회차 결과 (오차율 8.68E−9)

 

3. 최종 계산 (1.11.7 = ?)

2.의 6회차 결과값을 이용해 1.1^1.7 을 계산해 보니 소숫점 8째자리까지만 맞는 결과를 얻게 되었습니다. 

일반 계산기 이용한 값 =  

 1.17589234866

실제 값 = 

 1.17589234940796629191082142466659996882658807208250452...

오차 = 

 7.48E−10 

오차율(%) = 

 6.36113E-8 

 

4. 다른 방법

1.1^1.7 = 1.1 ^ (17/10) 이므로, 1.1^17 을 구한 값(A) 의 10제곱근과 같습니다. 따라서 "n 제곱근법"을 쓸 수도 있습니다. 

하지만 10 제곱근은 "n제곱근법"으로 구하기 복잡하므로, 그냥 뉴튼-랩슨법을 쓰시는 게 더 바람직합니다. 

댓글 '7'
  • profile
    세상의모든계산기 2015.08.11 23:08
    1.1^(2-0.1-0.1-0.1) 로 계산하면
    오차가 약간 줄어드는군요.
  • profile
    세상의모든계산기 2015.10.20 09:20

     334=30.75 와 같이 특수한 경우(=분모가 2의 n제곱수)는 일반 계산기로도 답을 구할 수가 있습니다.
    상수(반복)계산과 루트버튼만으로  334 을 쉽게 구할 수 있기 때문이죠.


    계산기 입력 :

    【3】【×】【3】【×】【3】  
    【√】【√】 

  • profile

    ※ 다른 방법을 시도해 봄 (정수지수와 루트 버튼을 이용)

    Step 1. 지수 1.7 대신 사용할 적당한 유리수를 찾습니다.

    적당한 유리수의 조건
    분모가 2ⁿ 일 것 (단, n은 5 이하)
    분자가 정수에 최대한 가까울 것

    Step 2. 적당한 유리수를 찾기 위해 1.7에 2를 반복해서 곱해봅니다. (Non-K Type 상수계산)

    【2】【×】【1.7】【=】 (3.4) = 1.7×2
    【=】 (6.8) = 1.7×2^2
    【=】 (13.6) = 1.7×2^3
    【=】 (27.2) = 1.7×2^4
    【=】 (54.4) = 1.7×2^5
    이 중에서 정수에 가까운 수는 6.8과 27.2 입니다. 

    Step 3. 6.8에 가까운 정수인 7과 27.2에 가까운 27 중에 어떤 값을 사용할지를 결정합니다. 

    7/2^2=1.75 이고 27/2^4=1.6875 이므로 1.7에 더 가까운 값인 1.6875를 사용하겠습니다. 

    Step 4. 1.1^(27/16) 을 계산기로 계산합니다. 

    01-21-2016 Image009-p16.png
    【1.1】【×】【=(26회 반복)】 으로 1.1^27을 계산하고 (실제 쌀집계산기 계산 결과 13.1099941912)
    【√】【√】【√】【√】 으로 16제곱근을 구합니다. (실제 쌀집계산기 계산 결과 1.1744922522)

    Step 5. 결과값의 비교

    구한 값과 1.1^1.7과의 오차는 -0.001400097208 (오차율 0.119 %)이고 이정도 오차면 나쁘지 않다고 보여집니다. 

  • profile

    위 과정의 지수부분을 수식화하고 그래프를 그려 비교해보면 아래와 같습니다.

    01-24-2016 Image007-p32.png

    그래프 범주 : x축=지수(0~1 사이), y축=지수의 오차(0~0.5 사이)

    해석 : 소수부가 어떤 값이냐에 관계없이 반복횟수가 많아질수록 삼각형이 작아지면서 오차범위(위아래 간격)가 줄어드는 것을 알 수가 있습니다. 그것은 step 2 과정이 필요 없다는 것을 의미합니다. 

    (n)회 반복시 오차 ≥ (n+1)회 반복시 오차 

  • profile

    정수부분까지 한꺼번에 반복하려고 하면 (일반적으로) 입력횟수가 많아지기 때문에 지수가 1 이상인 경우에는 정수부는 나중에 계산하고, 우선은 소수부분만 보시면 됩니다. 

    반복횟수가 많아지면 다음의 문제가 나타날 수 있습니다. 

    • 시간이 오래걸림
    • 【=】 를 많이 누르다보면 몇번 눌렀는지 헷갈릴 수 있음. 
    • 지수가 너무 크면 계산기 한계에 걸릴 위험이 있음. 

    1.1^1.7 = (1.1^1) × (1.1^0.7) 에서는, 1.1^0.7을 정확하게 구하는 문제로 단순화시킬 수 있습니다.

    01-24-2016 Image005-p32.png
    2^4 을 곱했을 때 정수에 더 가까운 값이나오지만, 

    01-24-2016 Image006-p32.png
    정수에 가깝지 않더라도, 그냥 반복횟수가 더 많은 쪽의 오차가 적다는 것을 확인할 수가 있습니다. 

  • profile

    1.1round(1.7×2n,0)2n 의 반복횟수(n)에 따른 오차율(%)을 살펴보겠습니다.

    01-25-2016 Image001-p32.png

    계산기 입력횟수를 최소화하기 위해서는 지수부분을 0~1로 간소화할 필요가 있겠구요. 
    반복횟수는 5회 안밖이 가장 적당해 보입니다. 

  • profile
    세상의모든계산기 2016.01.26 10:13

    이 방법의 또 다른 문제점이 있습니다.
    지수와 관계없이? 밑(base)이 큰 경우에도 적용하기 어렵습니다.

    예시) 6866^2.3 ≒ 667450000.784 를 구하는 경우

    "6866^0.3="의 값을 구해야 하는데, 4회 반복만 하려고 해도 6866^5 값을 알아야 하지만, 6866^4 에서 벌써 2.22236401550 × 10^15 이 되어 12-Digits 일반계산기의 한계에 이르게 됩니다. 

    6866^0.3=(6866^(1/2))^0.3 × (6866^(1/2))^0.3 으로 나눠서 계산하면? (n=4)

    1. 【6866】【√】 82.8613299434 ≒ 6866^(1/2)
    2. 【×】【=】【=】【=】【=】 3906245170.26 ≒ ("1")^5
    3. 【√】【√】【√】【√】 3.97635333655 ≒ ("2")^(1/16)
    4. 【×】【=】 15.811385857 ≒ "3"^2
    5. 【×】【6866】【×】【6866】【=】 745379656.368 최종값

    오차율 11.68% (버튼 입력 횟수 15+12=27회)

     6866^0.3=((6866^(1/4))^0.3)^4 으로 나눠서 계산하면? (n=5)

    1. 【6866】【√】【√】 9.10281988964 ≒ 6866^(1/4)
    2. 【×】【= 9회】 3906245170.21 ≒ "1"^10
    3. 【√ 5회】 1.99407957126 ≒ "2"^(1/32)
    4. 【×】【=】【=】【=】 15.8113858567 ≒ "3"^4
    5. 【×】【6866】【×】【6866】【=】 745379656.354 최종값

    오차율 11.68% (버튼 입력 횟수 24+12=36회)

     6866^0.3=((6866^(1/8))^0.3)^8  으로 나눠서 계산하면? (n=6)

    1. 【6866】【√】【√】【√】 3.01708798175 ≒ 6866^(1/8)
    2. 【×】【= 18회】 1294707079.69 ≒ "1"^19
    3. 【√ 6회】 1.38796233235 ≒ "2"^(1/32)
    4. 【×】【= 7회】 13.7727746091 ≒ "3"^8
    5. 【×】【6866】【×】【6866】【=】 649275534.619 최종값

    오차율 2.72% (버튼 입력 횟수 39+12=41회) (오차율은 n=7회와 동일)

     6866^0.3=((6866^(1/32))^0.3)^8  으로 나눠서 계산하면? (n=8)

    1. 【6866】【√】【√】【√】【√】【√】  ≒ 6866^(1/32)
    2. 【×】【= 76회】 1706351569.57 ≒ "1"^77
    3. 【√ 8회】 1.0865826537 ≒ "2"^(1/256)
    4. 【×】【= 31회】 14.256357072 ≒ "3"^32
    5. 【×】【6866】【×】【6866】【=】 672072557.808 최종값

    오차율 0.693% (버튼 입력 횟수 125+12=137회)

?