C_프로그래밍

[C 프로그래밍] 11장. 실수의 오차

팔공산호랑이 2020. 4. 4. 13:12

-----------------------------

실수 자료형에는

float, double, long double이 있습니다.

-----------------------------

자료형들의 크기를 살펴보면

float4바이트, 32비트

double8바이트, , 64비트

long double8바이트 이상입니다.

표현 범위는 floatdouble이 상당히 차이나는것을 볼 수 있습니다.

-----------------------------

우선 float형 변수를 만들고

%f형태로 그냥 출력하는것과

%.10f 를 이용해 소수점 10째 자리 까지 표현해서

오차가 얼마나 있는지 살펴보겠습니다.

-----------------------------

출력을 해보면

소수점 7째 자리부터

오차가 발생하는것을 볼 수 있습니다.

-----------------------------

-----------------------------

double이 가진 오차가 보이는것을 알 수 있습니다.

double은 약 소수 16째 자리 부터 오차가 보이기 시작합니다.

, float이나 double이나 둘 다 오차가 있는데

doublefloat보다 용량이 2배커서

훨씬 더 정밀하고 오차가 훨씬 더 적다는 것을 알 수 있습니다.

-----------------------------

floatdouble을 비교하면

float4바이트, double8바이트로

double이 용량이 2배 많아서

훨씬 더 오차가 적습니다.

-----------------------------