C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[64524] Re:Re:Re:double 변수 비교가 왜 안될까요? ㅠㅠ
바람따라 [jiniya] 1431 읽음    2011-06-07 21:24
정수, Currency Type(C++에서는 어떤 타입인지를 몰라서 ^^;;) 이 아닌이상 아래와 같은 비교결과는 당연합니다.
계산속도 향상을 위한 방편으로 일정정도의 정확도를 무시했다고 해야할까요...
기본적인 보정을 하지 않는 이상 아래와 같은 결과로 나옵니다.
예전 엑셀에서도 똑같은 일로 누군가 테클을 걸었고 비베, MS C++도 같은 결과가 나오는 걸로 알고 있습니다.
당연히 델파이도 똑같은 결과구요,.

Mins 님이 쓰신 글 :
: cc 님이 쓰신 글 :
: : Mins 님이 쓰신 글 :
: : :
: : : double d1 = 10.90;
: : : double d2 = 10.80;
: : : 
: : : if (d1 - d2 == 0.1) {
: : :     ShowMessage("0.1 차이입니다");
: : : }
: : : 

: : :
: : : 위의 코드가 뭐가 틀린건지 도저히 모르겠네요...
: : : 왜 메시지 박스가 뜨질 않는지 이해가 안갑니다..ㅜㅜ
: :
: : double d3 = d1 -d2;
: : if(d3 == 0.1)
: :     ShowMessage("0.1차이입니다");
: : 이렇게나
: : if((d1-d2) == 0,.1)
: :     ShowMessage("0.1 차이입니다");
: :
: : 이렇게해보시던가요
:
:
: 답변 감사드립니다^^
: 다른 방법으로 하는 방법은 알고 있는데 궁금한건 저 코드가 왜 안되는지가 이해가 안가서 질문 올린거랍니다.

+ -

관련 글 리스트
64510 double 변수 비교가 왜 안될까요? ㅠㅠ Mins 1190 2011/06/03
64511     Re:double 변수 비교가 왜 안될까요? ㅠㅠ cc 1448 2011/06/03
64523         Re:Re:double 변수 비교가 왜 안될까요? ㅠㅠ Mins 1483 2011/06/07
64524             Re:Re:Re:double 변수 비교가 왜 안될까요? ㅠㅠ 바람따라 1431 2011/06/07
64526                 Re:Re:Re:Re:double 변수 비교가 왜 안될까요? ㅠㅠ cc 2098 2011/06/07
64527                     Re:Re:Re:Re:Re:double 변수 비교가 왜 안될까요? ㅠㅠ 심성현 1299 2011/06/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.