유효숫자 반올림이란?
유효숫자(sig figs)는 어떤 수에서 실제로 의미 있는 정밀도를 나타내는 자릿수를 말합니다. 이 계산기는 입력한 수를 원하는 유효숫자 자릿수로 반올림해 줍니다. 정수, 소수는 물론 3.5e3, 3.5 x 10^3, 3.5*10^3 형태의 지수 표기법도 입력할 수 있습니다. 계산 결과는 반올림된 값과 함께, 마지막 유효숫자 위에 윗줄(오버라인)을 표시해 정밀도를 헷갈리지 않게 나타내는 표기 문자열로 보여 줍니다.
사용 방법
"반올림할 값:" 칸에 반올림하려는 수를 입력하세요. 두 번째 칸에는 남기고 싶은 유효숫자 자릿수를 적습니다. 그런 다음 계산 버튼을 누르면 됩니다. 크게 표시되는 숫자가 반올림된 결과이고, 아래 표에는 소수점 왼쪽의 끝자리 0이 유효하지 않을 때 마지막 유효숫자 위에 윗줄을 그어 명확히 표시한 표기가 나타납니다.
계산 원리
입력값을 \(V\), 요청한 유효숫자 자릿수를 \(N\)이라고 합시다. 먼저 가장 앞자리 숫자의 자릿수, 즉 \(d = \lfloor \log_{10}|V| \rfloor\)를 구합니다. 반올림 기준이 되는 거듭제곱은 \(p = d - (N - 1)\)입니다. 이를 이용해 다음과 같이 계산하는데,
$$\text{Rounded} = \operatorname{sign}(V)\cdot\left\lfloor\frac{|V|}{10^{\,p}}+0.5\right\rfloor\cdot 10^{\,p}$$이것이 바로 표준적인 반올림(round-half-up) 방식입니다. 마지막으로 부동소수점 오차를 없애기 위해 결과를 \(\max(0, -p)\) 자리의 소수로 다시 정리합니다.
예제로 살펴보기
305.459를 유효숫자 5자리로 반올림해 봅시다. 여기서 \(d = \lfloor \log_{10}(305.459) \rfloor = 2\) 이므로 \(p = 2 - (5 - 1) = -2\) 이고 \(10^p = 0.01\) 입니다. 그러면
$$305.459 / 0.01 = 30545.9$$이고, \(\lfloor 30545.9 + 0.5 \rfloor = 30546\), 다시 0.01을 곱하면 \(305.46\) 이 됩니다. 같은 수를 유효숫자 2자리로 반올림하면 \(310\) 이 되며, 끝자리 0은 유효하지 않으므로 3 1̅ 0 으로 표기합니다.
자주 묻는 질문
한 자릿수 위에 줄이 그어진 이유는 무엇인가요? 360 같은 정수를 유효숫자 2자리만 남기면 끝자리 0이 유효한지 아닌지 모호해집니다. 6 위에 윗줄을 그어 그 자리가 마지막 유효숫자임을 나타냅니다.
어떤 반올림 규칙을 사용하나요? 올림이 적용되는 반올림(round half up)입니다. 기준 자리 다음 숫자가 5 이상이면 올리고, 그렇지 않으면 버립니다.
999.6을 유효숫자 3자리로 반올림하면 어떻게 되나요? 자리올림이 일어나 1000 이 되며, 앞자리가 하나 늘어납니다. 이는 수학적으로 정확한 결과이므로 그대로 표시됩니다.