Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 부동 소수점의 정밀도는 얼마입니까?

<시간/>

C++에서 부동 소수점 숫자의 크기는 4바이트 또는 8바이트입니다. 따라서 소수점 이하 자릿수까지 저장할 수 있습니다. 예를 들어, 1/3 =0.333333… 무한대까지. 부동 유형 변수 안에 저장하면 일부 유효 숫자가 저장됩니다. 기본값은 6입니다. 따라서 일반적으로 C++의 부동 소수점 숫자는 소수점 이하 6자리까지 표시할 수 있습니다.

setprecision을 사용하여 정밀도의 크기를 변경할 수 있습니다. 이것은 iomanip 헤더 파일 내부에 있습니다. 아이디어를 얻기 위해 한 가지 예를 살펴보겠습니다.

예시 코드

#include <iostream>
#include <iomanip>
using namespace std;
int main() {
   double x = 2.3654789d;
   cout << "Print up to 3 decimal places: " << setprecision(3) << x << endl;
   cout << "Print up to 2 decimal places: " << setprecision(2) << x << endl;
   cout << "Print up to 7 decimal places: " << setprecision(7) << x << endl;
}

출력

Print up to 3 decimal places: 2.365
Print up to 2 decimal places: 2.37
Print up to 7 decimal places: 2.3654789