Ver Mensaje Individual
  #1  
Antiguo 07-11-2008
agustibaldo agustibaldo is offline
Miembro
 
Registrado: nov 2006
Posts: 105
Reputación: 20
agustibaldo Va por buen camino
Problema de Redondeo de Decimales con una Función

Estimados amigos de Club Delphi, en esta oportunidad les escribo porque tengo un problema bastante raro con una función que intenta obtener solo dos decimales de un valor.

Concretamente tengo lo siguiente:

Código:
function TFormPrincipal.TruncarDecimales (parametro: Double):Double;
begin
  Result := (Int(parametro * 100)) / 100;
end;
la cual llamo y grabo el resultado en una variable de la siguiente manera:

Código:
IMPORTE_TOTAL := TruncarDecimales(IMPORTE);
donde IMPORTE_TOTAL e IMPORTE son de tipo Doubles.

El problema se presenta cuando graba el resultado. Supongamos que, al momento de llamar a la función, IMPORTE = 190.950; cuando graba en IMPORTE_TOTAL el resultado es 190.94.-

Realmente no se que puede estar pasando. He probado declarar tanto la function como las variables como tipo Extended pero sigue persistiendo el problema.

Desde ya muchas gracias por su tiempo.
Saludos a todos.
Responder Con Cita