언어/C++

[C++] 부동 소수점

겜도리도리 2021. 11. 12. 04:20
반응형

개요

C++에서 소수를 저장할 때 부동소수점 자료형을 이용한다.

상세

1/3 = 0.3333...과 같은 경우 코드 내에서 무한한 소수점을 표현할 수 없으므로 특정 자리까지만 저장하고 나머지는 손실된다. std::cout의 경우 기본 정밀도는 6으로, 소수 아래 6자리까지는 유효하고, 그 아래부터는 오차가 발생한다.

cout.precision(n)을 사용하게 되면 n자리까지 cout이 표시하게 된다. (cout << fixed를 사용하면 소수 아래만 적용)

하지만 위에서 말한 것 처럼, 모든 소수 아래 자리를 저장할 수 없기 때문에 특정 자리 이하는 오차가 발생한다.

float, double, long double(12, 16bytes)의 범위와 유효 자릿수이다.

출처

https://boycoding.tistory.com/152

 

C++ 02.06 - 부동 소수점 숫자 (floating point numbers)

02.06 - 부동 소수점 숫자 (floating point numbers) 정수(integer)도 매우 좋지만 때때로 매우 큰 숫자나 소수점이 있는 숫자를 저장해야 하는 경우도 있다. 부동 소수점(floating point) 자료형 변수는 4320.0,..

boycoding.tistory.com

 

반응형