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.