C++
[C++] 정밀도 측정: std::setprecision()
sweetnew
2021. 10. 8. 23:04
반응형
자릿수 만큼 출력하는 std::setprecision() 함수는 결국 정밀도를 확인할 수 있다.
#include <iostream>
#include <iomanip> // std::setprecision()
int main() {
using namespace std;
double a(1.0);
double b(0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1 + 0.1); // 오차 누적
cout << setprecision(16); // 16 미만의 숫자를 입력하면 '1'이 출력된다.
cout << a << '\n'; // 1
cout << b << '\n'; // 0.9999999999999999
cout << setprecision(17) << b << '\n'; // 0.99999999999999989
cout << setprecision(18) << b << '\n'; // 0.999999999999999889
return 0;
}
반응형