Código Java:
Ver original
public static double redondeo(double num, int decimales)
{
// Almacena el decimal siguiente a los decimales que queremos obtener
// Almacena el número truncado
// Le añade 0.1, 0.001, ... en función de los decimales pedidos
if(ulti>4)
// Trunca de nuevo, parece que Java da ciertos fallos de precisión, y puede devolver algo como 3.1416000000000004 en lugar de 3.1416
return num;
}
Como veis, he tenido que añadir un truncamiento final para evitar cosas del tipo 3.1416000000000004. ¿A qué se debe esto? ¿Es culpa mía? ¿Es algo normal?
Gracias de antemano por vuestras respuestas.
 
 
 , y por cierto se me ha olvidado comentar que si quieres redondear double, tambien puedes hacerlo con la clase BigDecimal a través del método round, pasandole la precisión y el tipo de redondeo con la clase MathContext.
, y por cierto se me ha olvidado comentar que si quieres redondear double, tambien puedes hacerlo con la clase BigDecimal a través del método round, pasandole la precisión y el tipo de redondeo con la clase MathContext.
