Estoy obteniendo el resultado incorrecto usando el método a continuación.Obteniendo el resultado incorrecto para la evaluación de los valores de 100 * 2.55
public double evaluate(final double leftOperand, final double rightOperand) {
Double rtnValue = new Double(leftOperand * rightOperand);
return rtnValue.doubleValue();
}
Introducir valor del parámetro son: leftOperand = 100 y rightOperand = 2.55
estoy recibiendo Respuesta equivocada: 254,99999999999997
La respuesta correcta es un 255,0
obligatorio "Lo que todo informático debe saber sobre la aritmética de punto flotante" -link: http://docs.sun.com/source/806-3568/ncg_goldberg.html – Jacob
Lo exacta * * Valor hacer crees que tu valor de "2.55" tiene? –
@JonSkeet: Incluso si conoce el valor exacto de 2.55 y 100.0, la respuesta sería incorrecta ... –