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
[45170] [답변] Floating Point Error 감지방법 문의
정성훈.해미 [sage5nor] 1804 읽음    2006-06-01 16:53
안녕하십니까.
정성훈.해미입니다.

일반적인 Floating Point Error는 계산할 때, 변환할 때가 주를 이룹니다.

1) 계산의 경우
  - 원인: '0'으로 나눌 때 발생.
  - 조치: 계산전에 조건을 추가하여 '0'으로 나누지 않게 하면 됩니다.
  - 사용 예:
          float a, b, c;
         (중략)
         c = b!=0? a/b : a;    //b가 '0'일 경우 a값을 그대로 c에 넣고 b가 '0'이 아닐 경우 c = a/b

2) 변환의 경우
  - 원인: 문자를 실수로 변환 할 때 발생.
  - 조치: 변환 불가 할 때 지정한 기본값으로 변환하게하는 함수를 사용하면됩니다.
            예) StrToFloatDef() 함수.
  - 사용 예:
          AnsiString s;
          float c;
          (중략)
          c = s.ToFloatDef(0);

//----------------------------------------
//  ┏┓
//  ┣┻┓┏   ┃┃     작은 생각이 세상을 바꾼다
//  ┃♡┃┣   ┣┫┏┓
//  ┗━┛┗   ┃┃┣┫┏┓┏┓      - 정성훈.해미
//  ━━━━━━━━━┣┛┣┛┗┫━━━━━━
//----------------------------------------

나도초짜 님이 쓰신 글 :
: 안녕하세요..
:
: 프로그램 규모가 좀 크다보니까 버그가를 다 잡지 못하여
: 가끔씩 Floating Point Error 가 발생하는데 도데체 어디서
: 어떻게 발생을 하는지 알수가 없네요..
: 이걸 찾을수 있는 방법이나 방지할수 있는 방법이 없을까요?
:
: 도움부탁드립니다.

+ -

관련 글 리스트
45169 Floating Point Error 감지방법 문의 나도초짜 1163 2006/06/01
45170     [답변] Floating Point Error 감지방법 문의 정성훈.해미 1804 2006/06/01
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.