C++에서 cout.precision() 함수와 fixed를 사용하여 출력할 자릿수를 지정할 수 있다.
precision 함수란?
- 정수 부분을 포함하여 n개의 숫자를 나타냄
- 실수형의 경우 소숫점 이하 자리수 중 출력 범위를 넘어서는 부분에서 반올림한다. (4자리 출력 시 123.456 → 123.5)
- fixed와 같이 사용하면 소숫점 이하 출력 자릿수를 고정할 수 있다.
- fixed를 해제하려면 cout.unsetf(ios::fixed);를 사용.
예)
cout.precision(n);
cout << fixed << db << endl;
cout.unsetf(ios::fixed);
1. 필요한 라이브러리
#include<iostream>
2. 실수형 변수 선언
double db = 3.14159;
3. 출력 및 자리수 설정
// 기본 출력
cout << db << endl; // 3.14159
// 정수 포함 3자리 출력
cout.precision(3);
cout << db << endl; // 3.14
// 소숫점 이하 3자리 출력 (넷째 자리 값 반올림)
cout << fixed << db << endl; // 3.142
// 소숫점 자릿수 고정 해제
cout.unsetf(ios::fixed); // cout.unsetf(ios::fixed); 도 가능
cout << db << endl; // 3.14
4. 전체 소스 코드
#include <iostream>
using namespace std;
int main()
{
double db = 3.14159;
cout << db << endl; // 3.14159
cout.precision(3);
cout << db << endl; // 3.14
cout << fixed << db << endl; // 3.142
cout.unsetf(ios::fixed); // cout.unsetf(ios::fixed); 도 가능
cout << db << endl; // 3.14
return 0;
}
참고 자료
https://winterflower.tistory.com/299
'CS > 코딩테스트(C++)' 카테고리의 다른 글
[C++] 주소에 의한 호출, 참조에 의한 호출 (Call by Address, Reference), 포인터로 객체 멤버 접근하기 (0) | 2024.12.30 |
---|---|
[C++ STL] Pair 클래스 사용하기 (0) | 2024.12.29 |
[C++] getline() 특정 문자가 들어올 때까지 입력 받기 (0) | 2024.12.12 |
[C++] 시간복잡도 상수배 관련 최적화 요소들 (0) | 2024.11.20 |
[C++] 범위 기반 for문 (feat. auto 선언 지정자) (0) | 2024.11.19 |