돈 많은 백수가 되고 싶어
C#에서 while문에서 소수를 비교할 때 (==) 사용하면 안 되는 이유 본문
C#에서는 부동소수점 숫자를 정확하게 나타내기 어렵기 때문에, 부동소수점 숫자를 비교할 때 오차가 발생할 수 있습니다. 이러한 오차는 컴퓨터의 이진수 연산에서 발생하는 문제로, 실제 수학적 계산과는 다른 결과를 내게 됩니다.
따라서, 부동소수점 숫자를 비교할 때는 등호(==) 연산자를 사용하면 안 됩니다. 대신, 두 숫자의 차이를 계산한 뒤, 이 값이 허용 가능한 오차 이내인지를 확인해야 합니다.
결론은 컴퓨터의 기술적 한계 때문에 == 사용 시 오류가 나는 겁니다.
(이거 알아 낼려고 몇시간이나 머리 쥐어 듣으면서 구글링 했다.)
'프로그래밍 > 기타' 카테고리의 다른 글
GitHub 데스크탑 사용법-협업 시 파일 받는 법 (0) | 2023.05.02 |
---|