logo

Precyzja ustawiania manipulatora C++

Precyzja ustawiania manipulatora C++ Funkcja służy do kontrolowania liczby cyfr strumienia wyjściowego wyświetlanego jako wartość zmiennoprzecinkowa.

Ten manipulator jest zadeklarowany w pliku nagłówkowym.

Składnia

 /*unspecified*/ setprecision (int n); 

Parametr

N : nowa wartość dokładności dziesiętnej.

Wartość zwracana

Ta funkcja zwraca obiekt nieokreślonego typu. Funkcji setbase należy używać wyłącznie jako manipulatora strumienia.

Wyścigi danych

Obiekt strumienia, do którego jest wstawiany lub wyodrębniany, jest modyfikowany, a równoczesny dostęp do tego samego obiektu strumieniowego może spowodować wyścigi danych.

komputer wynalazł, w którym roku

Wyjątki

Obiekt jest w prawidłowym stanie, jeśli zostanie zgłoszony jakikolwiek wyjątek.

Przykład 1

Zobaczmy prosty przykład ilustrujący użycie setprecision:

 #include // std::cout, std::fixed #include // std::setprecision using namespace std; int main () { double f =3.14159; cout << setprecision(5) << f << '
'; cout << setprecision(9) << f << '
'; cout << fixed; cout << setprecision(5) << f << '
'; cout << setprecision(9) << f << '
'; return 0; } 

Wyjście:

 3.1416 3.14159 3.14159 3.141590000 

Przykład 2

Zobaczmy inny prosty przykład:

 #include #include #include #include using namespace std; int main() { const long double pi = acos(-1.L); cout << 'default precision (6): ' << pi << '
' << 'setprecision(10): ' << setprecision(10) << pi << '
' << 'max precision:' << setprecision(numeric_limits::digits10 + 1) << pi << '
'; return 0; } 

Wyjście:

przykładowy JavaScript
 default precision (6): 3.14159 setprecision(10): 3.141592654 max precision:3.141592653589793239 

Przykład 3

Zobaczmy inny prosty przykład:

 #include #include using namespace std; int main (void) { float a,b,c; a = 5; b = 3; c = a/b; cout << setprecision (1) << c << endl; cout << setprecision (2) << c << endl; cout << setprecision (3) << c << endl; cout << setprecision (4) << c << endl; cout << setprecision (5) << c << endl; cout << setprecision (6) << c << endl; return 0; } 

Wyjście:

 2 1.7 1.67 1.667 1.6667 1.66667