아래와 같이 실수를 S1 = S2 형태로 비교하면 같은 숫자인데도 같지 않다고 계산됩니다.

SameValue 등의 함수를 이용하면 같다고 계산됩니다.

 

uses
  System.Math;

procedure TForm1.Button1Click(Sender: TObject);
var
  S1, S2: Single;
begin
  S1 := 0.3;
  S2 := 0.1;
  S2 := S2 / 10.0;      // should be 0.01
  S2 := S2 * 10.0;      // should be 0.1 again
  S2 := S2 + S2 + S2;   // should be 0.3

  if S1 = S2 then
    ShowMessage('True')
  else
    ShowMessage('False');

  if SameValue(S1, S2) then
    ShowMessage('True')
  else
    ShowMessage('False');
end;
 

부동소수점 숫자에 대해 잘 소개한 글(영문)이 있어 안내합니다.

http://rvelthuis.de/articles/articles-floats.html

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 25145
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 23453
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 25437
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 31350
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 32342
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 27783
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 48828
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 185798
683 [업데이트][핫픽스][10.1 베를린] iOS 32비트 디버거 핫픽스 험프리 2016.12.22 382
682 [고객 사례- 박물관, 시스템제어, 델파이] 미니어처 원더랜드 박물관 관리자 2016.12.19 971
» 부동소수점 숫자(실수)에 대한 참고 글 [1] 험프리 2016.12.14 1272
680 곧 다가올 리눅스를 준비하세요. file 험프리 2016.12.09 977
679 [고객 사례- 아동 복지, RAD스튜디오] HOP (여학생 경연대회 수상작) - 굶주림-비만 방지 앱 관리자 2016.12.08 1262
678 [고객 사례-영상 제작, 3D, 델파이] FrameForge - 3D 영상 제작 스토리보드 제작용 애플리케이션 관리자 2016.11.30 721
677 [고객 사례- 예술, 이미지 작업, 델파이] Expresii - 디지털 수채화 페인팅 앱 관리자 2016.11.25 1158
676 이 달의 기술자료 - 2016년 12월 file 험프리 2016.11.24 522
675 [코드레이지11] 인공지능(AI) with 델파이 & C++빌더 - Boian Mitov [1] 험프리 2016.11.24 1724
674 [코드레이지11] FireDAC 이해하기, RAD 스튜디오 데이터 엑세스 프레임워크 선택 - Cary Jensen 험프리 2016.11.24 646
673 [코드레이지11] Debug faster. Debug smarter - Primož Gabrijelčič 험프리 2016.11.22 336
672 [코드레이지11] SVN, DUnitX과 Jenkins 서버로 자동 빌드/테스트 환경 구성 - Craig Chapman 험프리 2016.11.22 874
671 CodeRage XI 온라인 컨퍼런스 안내 file 험프리 2016.11.15 391
670 [베를린 U2] 윈도우 10 캘린더 활용하기 (1분 동영상) 험프리 2016.11.15 688
669 [베를린 U2] 퀵에디트(Quick Edit) 메뉴 사용하기 (1분 동영상) 험프리 2016.11.15 425
668 [베를린 U2] 새로운 윈도우 10 스타일 적용하기 (1분 동영상) 험프리 2016.11.15 485
667 [베를린 U2] 윈도우 10 스토어에 배포하기 (1분 동영상) 험프리 2016.11.15 397
666 [베를린 U2] 새로운 기능! 10.1 베를린 업데이트2 관리자 2016.11.15 1133
665 [고객 사례- 박물관, RAD Studio+비콘] 사이토바루 고고학 박물관 – 비콘 활용 솔루션 관리자 2016.11.04 1687
664 [고객 사례- 의료, 델파이+임베디드DB] Management Plus – 안과 EHR 솔루션  file 관리자 2016.11.03 981