저는 현재 계산기 응용 프로그램을 작성 중입니다. 저는 이중이 좋은 수학을위한 최선의 선택이 아니라는 것을 압니다. 응용 프로그램의 대부분의 기능은 정밀도가 뛰어나지 만보기 흉한 결과를 얻지 못합니다. 내 솔루션은 사용자에게 12 자릿수의 정밀도 만 표시하는 것입니다. 저의 가장 낮은 정밀도는 수치 적 파생 함수로 인해 12를 선택했습니다.자바에서 특정 정밀도로 복식 표시
내가 겪고있는 문제는 스케일러에 의해 곱 해져서 스칼라로 나누면 정밀도가 튕겨 나오기 쉽다는 것입니다. DecimalFormat을 사용하는 경우 12 개만 표시하고 과학 표기법에 대한 E를 올바르게 표시 할 수는 없지만 필요하지 않으면 거기에 있지 않습니다.
예를 들어 나는
1.23456789111213 to be 1.234567891112
하지만 결코
1.234567891112E0
원하지만 나는 또한 12 소수점 자리까지 숫자의 문자열을 포맷 할 그래서 기본적으로
1.23456789111213E23 to be 1.234567891112E23
을 원하는 과학적 표기법을 지키지 만 과학적 표기법을 지키지 않으면 과학적 표기법을 사용하지 않아야합니다.
뭐하는거야? 짧은 절단은 어려운 작업으로 이어질 수 있습니다! 당신은 double이 올바른 선택이 아니라는 것을 알고 있습니다 만, 익숙하기 때문에 DoubleDecimal을 사용하는 법을 배워야 할 때 double의 문제를 극복하려고 시도하고 있습니다 (제안대로!) – Frankie