가능한 중복 :
Is JavaScript's Math broken? JS는 25.1 + 61.7 + 13.2 = 100.00000000000001을 보여 왜자바 스크립트 부동 소수점 합 문제
? 13.2 + 25.1 + 61.7 = 100과 같이 숫자의 위치를 변경하면 고정됩니다. 누구나 설명 할 수 있습니까?
가능한 중복 :
Is JavaScript's Math broken? JS는 25.1 + 61.7 + 13.2 = 100.00000000000001을 보여 왜자바 스크립트 부동 소수점 합 문제
? 13.2 + 25.1 + 61.7 = 100과 같이 숫자의 위치를 변경하면 고정됩니다. 누구나 설명 할 수 있습니까?
부동 소수점 산술을 사용하고 있기 때문에. Here is an explanation of what is happening.
JavaScript는 2 진수 부동 소수점 형식 인 IEEE 754 부동 소수점 연산을 사용합니다. 이 형식으로 정확하게 표현할 수없는 많은 값들이 많이 있는데 그 중 특히 x.7
과 같은 십진수입니다.
컴파일러 문제가 아닙니다. JavaScript가 실수를 나타내는 근본적인 방식에 문제가 있습니다. 다른 언어들도 똑같은 문제점을 가지고 있습니다.
컴퓨터는 일반적으로 실수를 엄격하게 처리하지 않습니다.