| [ windows ] in KIDS 글 쓴 이(By): Asteau (언젠간학생) 날 짜 (Date): 1998년 8월 7일 금요일 오후 05시 16분 24초 제 목(Title): 황당한 컴퓨터 연산 int a = (int)(4.2f*10); 위 문장을 컴퓨터에서 돌려 봤을때 아주 황당한 결과가 나옵니다. 상식적으로는 42가 나와야 하겠지만, 제 컴퓨터에서는 41이 나와버립니다. 주위의 몇몇 컴퓨터에 대해서도 같은 결과가 나오는 것을 확인했습니다. 참고로 환경은 Intel Pentium에 VC++5입니다. 분명 4.2f*10을 4.19999999... 등으로 착각한 것 같은데 이것이 시스템 (CPU, OS, Compiler 어느 쪽이든)의 치명적인 오류인지, 프로그래머로서 충분히 발생할 수 있다고 보고 신경써야할 동작인지 모르겠군요. ------------------------------------------------------------------- G o n g m u d o h a 公無渡河 公竟渡河 陸河而死 當泰公河 G o n g k y u n g d o h a 公竟渡河 陸河而死 當泰公河 公無渡河 T a h a i e s a 陸河而死 當泰公河 公無渡河 公竟渡河 D a n g t a e g o n g h a 當泰公河 公無渡河 公竟渡河 陸河而死 |