부동 소수점 정밀도의 함정과 해결 방법
부동 소수점 숫자는 분수와 실수 값을 나타내는 효율성으로 인해 프로그래밍에서 널리 사용됩니다. . 그러나 아래 쿼리의 예시와 같이 본질적으로 예상치 못한 결과를 초래할 수 있는 정확성 문제가 발생합니다.
질문:
프로그래머가 숫자를 계산할 때 불일치를 발견했습니다. 부동 소수점 입력을 기반으로 하는 열의 수입니다. 결과가 2.0에 매우 가깝음에도 불구하고 정수로 변환하면 1로 반내림되어 잘못된 개수가 발생합니다.
답변:
플로팅 이해- 점 산술:
부동 소수점 숫자의 정밀도는 컴퓨터 내부에서 표현되는 방식에 따라 제한됩니다. 바이너리 형식. 이로 인해 특히 특정 값을 처리할 때 약간의 부정확성이 발생할 수 있습니다.
위 내용은 부동 소수점 계산 결과 정수 개수가 잘못된 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!