Tablora · 라이브러리
0.10과 0.20을 정확한 십진수로 검산하기
0.10 더하기 0.20이 십진 연산으로 정확히 0.30인지 확인해, 부동소수점 표시 오차 없이 명시된 합계와 비교합니다.
0.1 더하기 0.2가 틀려 보일 수 있는 이유
많은 프로그램은 숫자를 이진 부동소수점으로 저장하는데, 이 방식으로는 0.1과 0.2를 정확히 나타낼 수 없습니다. 둘을 더하면 저장된 결과가 0.3보다 아주 조금 커지고, 서식에 따라 0.30000000000000004가 보이거나 두 값이 같지 않다는 비교 결과가 나올 수 있습니다. 대사 작업에서는 이런 오차가 실제로는 없는 불일치처럼 보입니다.
소수 합계 확인 도구는 이를 피합니다. 각 값을 십진 문자열로 읽고, 모든 값을 같은 소수 자릿수로 맞춘 뒤 정수로 더하므로 0.10과 0.20의 합은 정확히 0.30이 됩니다.
줄 입력하기
- 금액을 한 줄에 값 하나에 입력하거나 붙여 넣습니다. 빈 줄은 무시되고 값 앞뒤의 공백은 잘립니다.
- 표준 십진 표기를 사용합니다. 앞의 마이너스는 선택 사항이고, 숫자와 소수 부분 앞의 마침표만 씁니다. 자릿수 구분 쉼표, 소수 쉼표, 플러스 기호, 통화 표시는 거부됩니다.
- 확인하려는 숫자를 같은 방식으로 적어 예상 합계에 넣습니다.
- 계산을 누르고 계산된 합계, 예상 합계, 차이, 합계 일치를 읽습니다.
0.10과 0.20의 결과
값이 0.10과 0.20이고 예상 합계가 0.30이면, 계산된 합계는 0.30, 차이는 0.00이며 합계 일치에는 예가 표시됩니다. 결과가 소수 두 자리인 것은 입력값과 예상 합계 중 가장 많은 자릿수가 두 자리이기 때문입니다.
차이는 항상 계산된 합계에서 예상 합계를 뺀 값이므로, 차이가 음수라면 입력한 줄의 합이 명시된 숫자에 못 미친다는 뜻입니다.
실제 표에서 값 준비하기
명세서에서 복사한 금액이 표준 형식으로 오는 경우는 드뭅니다. 먼저 문서에 쓰인 소수 및 자릿수 구분 기호를 선택해 숫자 형식 통일 도구로 열을 처리한 다음, 변환된 값을 확인 도구에 복사하세요. 형식 통일 도구가 검토 대상으로 보류한 값은 아직 합산할 준비가 되지 않은 것이니, 합계를 믿기 전에 해결하세요.
확인 도구는 입력한 값을 정확히 계산할 뿐 그 이상은 하지 않습니다. 통화를 환산하거나 세금 또는 반올림 규칙을 적용하거나, 모든 레코드가 입력되었는지 알려 주지 않습니다.
확인 도구가 거부하는 입력
- 자릿수 구분 쉼표가 있는 1,234.50이나 소수 쉼표를 쓴 1234,50. 먼저 숫자 형식 통일 도구로 변환하세요.
- 플러스 기호가 붙은 +5.00. 5.00으로 입력하세요.
- 앞의 0이 없는 .50. 0.50으로 입력하세요.
- 괄호로 묶인 (2.50). -2.50으로 입력하세요.
- 이 중 하나라도 있으면 계산 전체가 ‘입력한 값을 확인하고 다시 시도하세요.’라는 메시지와 함께 멈추므로, 잘못된 줄이 조용히 건너뛰어지는 일은 없습니다.
입력값
- 한 줄에 값 하나
- 0.10 0.20
- 예상 합계
- 0.30
결과
- 계산된 합계
- 0.30
- 차이
- 0.00
- 합계 일치
- 예