visualizar los decimales de un double
Hola a todos. Me gustarÃa vsualizar con un println un double pero que me muestre solo los dos primeros decimales del resultado. A ver si me explico, no quiero que aparezca lo siguiente:
20.13333333333333
sino:
20.13
No se si se podrá hacer esto. Gracias.
20.13333333333333
sino:
20.13
No se si se podrá hacer esto. Gracias.
Si tienes la version del jdk 1.5 ya te proporciona secuencias de escape como C, y pues puedes darle formato a la salida tipo:
Double m = new Double (2.333333);
System.out.printf(" %2f", m);
Double m = new Double (2.333333);
System.out.printf(" %2f", m);
Si no tienes esa version de java , puedes utilizar esta formula que es independietne a la version
float round(double f,int i)
{
double d=Math.pow(10.0,(double) i);
double aux=f*d;
int auxi=(int) aux;
float df=auxi/((float) d);
return df
}
No te confunda tanta formula , es sencillo
Por ejemplo 2.3333333 vamos a coger 2.3
float round(2.333333,1)
{
double d=Math.pow(10.0,(double) i);
//d=10
double aux=f*d;
// aux=23.33333
int auxi=(int) aux;
//auxi=23
float df=auxi/((float) d);
//df=23/10=2.3
return df
}
Saludos
float round(double f,int i)
{
double d=Math.pow(10.0,(double) i);
double aux=f*d;
int auxi=(int) aux;
float df=auxi/((float) d);
return df
}
No te confunda tanta formula , es sencillo
Por ejemplo 2.3333333 vamos a coger 2.3
float round(2.333333,1)
{
double d=Math.pow(10.0,(double) i);
//d=10
double aux=f*d;
// aux=23.33333
int auxi=(int) aux;
//auxi=23
float df=auxi/((float) d);
//df=23/10=2.3
return df
}
Saludos
