C/Visual C - Redondear float en C++

 
Vista:

Redondear float en C++

Publicado por María (3 intervenciones) el 08/02/2007 13:11:48
Hola, quisiera saber como redondeo numeros flotantes en c++, pero que al ser redondeados sigan siendo flotantes, o sea con 2 decimales. Probe con las funciones round, trunc, ceill, etc pero no me las reconoce el compilador, alguan solucion por favor?! Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Redondear float en C++

Publicado por Nelek (816 intervenciones) el 09/02/2007 07:36:42
Yo me hice mi propia funcion para redondear a un numero de decimales no fijados, es decir, tu le pasas la variable a redondear y como segundo parametro el numero de decimales que quieres. Aqui te la pongo:

double CutAndRoundNumberToNDecimals (double dValue, int nDec)
{
double dTemp = 0, dFract = 0, dInt = 0, dRes = 0;

int nCount = 0;

dTemp = dValue*pow(10,nDec);

dFract = modf (dTemp, &dInt);

if (dFract >= 0.5)
dInt++;

dRes = dInt/pow(10,nDec);

return dRes;
}

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Redondear float en C++

Publicado por Javier (1 intervención) el 28/10/2009 23:18:38
Hola recien aprendo en C
lo q hago para loq ue pides es esto, cuando pones; %f en lugar de eso pon %.2f
el numero en lugar del 2 lo puedes cambiar por el numero de decimales que quieras, es % + . (un punto) + numero de decimales que quieras +f
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Redondear float en C

Publicado por nuñez (1 intervención) el 25/03/2012 21:30:21
para la asignatura de programacion he conseguido que el resultado me de 6 decimales con
cout.setf(ios::fixed, ios::floatfield); cout.precision(6);
pero asi los decimales no se redondean
estoy mirando vuestros post y veo que hablais de %f esto exactamante donde va? se escribe en un cout, como una operacion mas o como?
porque si lo pongo solo no me deja compilar ya que me pide una expresion previa a %
gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Redondear float en C

Publicado por Wil (1 intervención) el 30/06/2012 15:58:11
Hola , este "%f", se utiliza en C, no en estandar ASI C++; de ahi la variacion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar