C와 C++에서 float형의 유효숫자 자리가 7자리라고 하는데
어떤 분께서는 정확히는 6자리라고 하시더군요.
무튼.. 6자리라고 가정하고 입력된 값을 "%.10f"로 소수 이하 10자리까지 표현한다고 할때
입력 : 123.99
출력 : 123.9899978638
입력 : 0.9999
출력 : 0.9998999834
이렇게 나옵니다.
첫 입력의 경우 지수+가수 하여서 5자리 이고
두번재 경우도 소수 4번째 자리까지만 입력 하였는데
어째서 6자리의 유효숫자가 오차가 발생하는 걸까요??