Tal como dice la ayuda de delphi 6 para RoundTo:
Cita:
Note: The behavior of RoundTo can be affected by the Set8087CW procedure or SetRoundMode function.
|
Por tanto, para obtener el valor correcto, tenemos que poner en algun lugar de la aplicación:
SetRoundMode(rmup);
Y ahora si:
edit6.Text:= FloatToStr(roundto(1.245,-2)); // obtines 1.25
Aunque he notado que se pueden perder millonésimas de euro. En cantidades de 3.000 € se ve un fallo de 1 centimo.
Un saludo