Java 할인 합계가 1원 다를 때 — BigDecimal 반올림 위치 맞추기
같은 할인인데 합계가 1원 다르면, 개별 상품과 전체 합계 중 어디에서 반올림했는지 먼저 맞춘다.이 예제는 상품 합계에서 할인한 뒤 마지막에 한 번 반올림해 4,498원으로 계산한다. 바로 이동문제 발생 · 해결방안 · 실행 결과 · 해결 완료 · 실습 준비·전체 코드 "> 1. 문제 발생 — 같은 상품 세 개가 4,497원 또는 4,498원 같은 입력값상품 가격1,999원수량3개할인율25% 한 개씩 할인·반올림하면 1,499원 × 3개 = 4,497원이다.세 개 합계에서 할인하면 5,997원 × 0.75 = 4,497.75원이고, 마지막에 반올림하면 4,498원이다. "> 2. 해결방안 — 중간 반올림을 빼고 마지막에 한 번 여기서는 합계 할인 후 원 단위 HALF_UP을 계산 규칙으로 정했다.프..
2026. 11. 15.