Java에서도 쓰지말라고 권유하는 기능이 있구나.
계산하는게 이따위면 어떻게 믿고 쓰겠냐.
진짜 누구 말마따나 자바 계산하는거 못믿으니까 DB에서 계산한 값을 리턴받게 해서 쓴다는게 이해가 된다.
아래는 소수점 계산하는 소스 예제다.
이것도 문제가 있다.
이렇게 해결한다고 해도 또 문제는 있다.
주의하자.
아무리 자바라도 못믿는게 있다는걸 깨달았다.
계산하는게 이따위면 어떻게 믿고 쓰겠냐.
진짜 누구 말마따나 자바 계산하는거 못믿으니까 DB에서 계산한 값을 리턴받게 해서 쓴다는게 이해가 된다.
아래는 소수점 계산하는 소스 예제다.
double tempT = ((double)notNullInteger(typeT[k]) / max_cnt) * 100;
double tempM = ((double)notNullInteger(typeM[k]) / max_cnt) * 100;
double tempW = ((double)notNullInteger(typeW[k]) / max_cnt) * 100;
결과는 다음과 같다.(대충 이런식)
-------------------------
0.613496932515337
0.613496932515337
100.0
double tempM = ((double)notNullInteger(typeM[k]) / max_cnt) * 100;
double tempW = ((double)notNullInteger(typeW[k]) / max_cnt) * 100;
결과는 다음과 같다.(대충 이런식)
-------------------------
0.613496932515337
0.613496932515337
100.0
이것도 문제가 있다.
이렇게 해결한다고 해도 또 문제는 있다.
궁금이
2008-12-03 11:32:00.0 |
소수점 계산시 오류 |
자바에서 소수점 계산시 오류에 관한 내용은 많이 검색해 봤는데요, 딱히 방법이 떠오르질 않아서 문의 드립니다.
double ld_mod = (aaa * 100) % 3;
위의 처럼 aaa를 입력 받아 3으로 나눈 다음 나머지가 0 이냐를 점검에서 (즉, 나누어서 떨어지냐...) 또 다른 계산을 하는 프로그램을 만들고 있습니다. 그런데, 계산이 이상하여 자세히 점검해 보니 아래처럼 결과과 나오네요. -------------------------------------------------------------- double ld_mod1 = (2.01 * 100) % 3; ld_mod1 = 2.9999999999999716 --------------------------------------------------------------
ld_mod1 의 값이 0.0으로 나오게 하는 방법이 없나요???
|
tag는 게시물의 성격을 나타내는 키워드를 입력하는 공간입니다.
tag는 login 후 사용하실 수 있습니다.
tag는 login 후 사용하실 수 있습니다.
주의하자.
아무리 자바라도 못믿는게 있다는걸 깨달았다.
'Programming > JAVA/JSP' 카테고리의 다른 글
[Java] 정규식을 이용한 태그 제거 메서드 (0) | 2009.07.02 |
---|---|
[Java] JFreeChart (차트 생성 라이브러리) (0) | 2009.06.18 |
[Java] String[] 중 가장 큰(MAX) 값 리턴해주는 메서드 (0) | 2009.06.11 |
[Java/Jsp] JFreeChart를 이용한 차트 그리기 (1) | 2009.06.11 |
[JAVA] 메일 발송시 html tag가 텍스트로 출력되는 경우 (0) | 2009.05.13 |