¿Setprecision en c ++ round? Si es así, ¿por qué estoy viendo esto?
El siguiente fragmento de código genera 0.29847 cuando habría esperado 0.29848:
double f = 0.298475;
cout << setprecision(5) << f << endl;
Para otros ejemplos, sin embargo, observo redondeo:
double f = 0.123459;
cout << setprecision(5) << f << endl;
salidas: 0.12346
y
double f = 0.123454;
cout << setprecision(5) << f << endl;
salidas: 0.12345