Tablora

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이며 합계 일치에는 예가 표시됩니다. 결과가 소수 두 자리인 것은 입력값과 예상 합계 중 가장 많은 자릿수가 두 자리이기 때문입니다.

차이는 항상 계산된 합계에서 예상 합계를 뺀 값이므로, 차이가 음수라면 입력한 줄의 합이 명시된 숫자에 못 미친다는 뜻입니다.

실제 표에서 값 준비하기

명세서에서 복사한 금액이 표준 형식으로 오는 경우는 드뭅니다. 먼저 문서에 쓰인 소수 및 자릿수 구분 기호를 선택해 숫자 형식 통일 도구로 열을 처리한 다음, 변환된 값을 확인 도구에 복사하세요. 형식 통일 도구가 검토 대상으로 보류한 값은 아직 합산할 준비가 되지 않은 것이니, 합계를 믿기 전에 해결하세요.

확인 도구는 입력한 값을 정확히 계산할 뿐 그 이상은 하지 않습니다. 통화를 환산하거나 세금 또는 반올림 규칙을 적용하거나, 모든 레코드가 입력되었는지 알려 주지 않습니다.

확인 도구가 거부하는 입력

입력값

한 줄에 값 하나
0.10 0.20
예상 합계
0.30

결과

계산된 합계
0.30
차이
0.00
합계 일치
예