이 계산기의 기능
반올림 방법 계산기는 양수든 음수든 원하는 자릿값으로 수를 반올림해 줍니다. 소수점 왼쪽의 십억 자리부터 오른쪽의 십억분의 일 자리까지 9가지 반올림 방법 중 하나를 골라 적용할 수 있습니다. 대부분의 반올림 규칙은 딱 절반이 되는 "경계값"(뒤에 의미 있는 숫자가 없는 5)을 제외하면 모든 수에서 동일한 결과를 냅니다. 어떤 방법을 선택하느냐에 따라 바로 이 경계값을 어떻게 처리할지가 결정됩니다.
사용 방법
먼저 방법을 선택하고, 반올림할 값을 입력하세요(음수는 맨 앞에 마이너스 기호를 붙이면 됩니다). 그다음 반올림 자리를 고르면 됩니다. 계산기는 반올림된 결과와 함께, 적용된 자릿값과 규칙을 알기 쉬운 설명으로 보여 줍니다.
공식 풀이
유지할 소수 자릿수를 p라고 합시다(정수 자리는 음수로 표시). 값에 배율 \(f = 10^{p}\)를 곱하면, 반올림할 자리의 숫자가 일의 자리로 옮겨집니다. 배율을 적용한 값 \(s = \text{값} \times f\)를 선택한 방법에 따라 정수 n으로 반올림한 뒤, 최종 답은 \(n \div f\)로 구합니다.
$$\text{Result} = \frac{\operatorname{round}\!\left(\text{Value} \times 10^{\,p}\right)}{10^{\,p}}$$
$$\begin{gathered} \text{Result} = \dfrac{n}{10^{\,p}} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} s &= \text{Value} \times 10^{\,p} \\ p &= \text{Round To} \\ n &= \begin{cases} \lfloor s \rfloor & \text{frac}(s) < 0.5 \\ \lceil s \rceil & \text{frac}(s) > 0.5 \\ \text{Method} & \text{frac}(s) = 0.5 \end{cases} \end{aligned} \right. \end{gathered}$$
이진 부동소수점 방식에서는 1.15가 실제로는 1.15보다 약간 작은 값으로 저장되어 진짜 경계값을 놓칠 수 있는데, 이를 제대로 잡아내기 위해 경계 판정 전에 배율을 적용한 값을 소수점 아래 9자리로 먼저 반올림합니다.
실전 예시
값 1.15, 방법은 올림 반올림(Round Half Up), 반올림 자리는 소수 첫째 자리(\(p = 1\))라고 합시다. \(f = 10\)이므로 \(s = 11.5\) — 정확히 절반에 해당하는 경계값입니다. 올림 반올림은 경계값을 양의 무한대 방향으로 보내므로 \(\lceil 11.5 \rceil = 12\)가 되고,
$$\frac{\left\lceil \text{Value} \times 10^{\,p} \right\rceil}{10^{\,p}} = \frac{12}{10} = \textbf{1.2}$$
가 됩니다.
자주 묻는 질문
은행가 반올림(Bankers' rounding)이란? 짝수 반올림(Round Half Even)은 경계값을 가장 가까운 짝수로 보냅니다. 그래서 2.5는 2가 되고, 3.5는 4가 됩니다. 경계값을 위아래로 고르게 분산시키므로 긴 합산에서 누적되는 편향을 줄여 줍니다.
음수 반올림 자리는 어떻게 동작하나요? 음수 자리는 소수점 왼쪽으로 반올림합니다. 천 자리(\(p = -3\))는 가장 가까운 1000 단위로 맞추므로 12,345는 12,000이 됩니다.
무작위 반올림(Round Half Random)은 왜 매번 결과가 다른가요? 이 방법은 경계값마다 50:50 동전 던지기를 하므로 의도적으로 비결정적입니다. 따라서 계산할 때마다 다른 결과가 나올 수 있습니다.