글
실제 소스코드를 확인하진 않았지만.. 좋은 방법이 떠오른다.
문제점)일단 부동소수점 방식의 데이터 타입으론 지수부(e)+가수부
정확한 연산이 안된다. (결제등 프로그램이라면 중요)
BigInteger란 클래스가 쓰인다 하셨는데..
Sol아이디어)예전에 작업했던 반올림용 round()메서드 구현하기 처럼
실제 데이터 보관은 String형 (ex) String str = "241.12342"
실제 연산은 str을 파싱해 long등 큰 타입의 정수형 만들어 다루고,
24112342 - 1000001 = 14112341
반환시 return double retVal/10*n(해당 소수점 6개 만큼)
으로 처리하는게 아닐까 싶다.(tc++pl에서 얼핏 본듯;;)
RECENT COMMENT