Hallo
kann jemand diese Problem nachvollziehen?
roundto oder simpleroundto
liefert bei -2 stelliger Rundung für x,995 mal x,99 oder x,00?
Mein eigendliches Problem liegt in einer Rundungsdifferenz die bei einem vom 6 Win XP PC mit der gleichen Applikation (gleiche exe) unterschiedliche Werte liefert.
auf 5 PC´wird 451.995 zu 452,00 gerundet(-2)
auf einem zu 451,99 ?
Alles XP mit allen Updates
hier ein Beispiel
ValueListEditor1.Values['x217']:=floattoStr(simpleRoundto(217.995,-2));
//=218 ist OK
ValueListEditor1.Values['x218']:=floattoStr(simpleRoundto(218.995,-2));
//=218,99 F
ValueListEditor1.Values['x219']:=floattoStr(simpleRoundto(219.995,-2));
//=219,99 F
ValueListEditor1.Values['r217']:=floattoStr(Roundto(217.995,-2));
ValueListEditor1.Values['r218']:=floattoStr(Roundto(218.995,-2));
ValueListEditor1.Values['r219']:=floattoStr(Roundto(219.995,-2));
kann jemand diese Problem nachvollziehen?
roundto oder simpleroundto
liefert bei -2 stelliger Rundung für x,995 mal x,99 oder x,00?
Mein eigendliches Problem liegt in einer Rundungsdifferenz die bei einem vom 6 Win XP PC mit der gleichen Applikation (gleiche exe) unterschiedliche Werte liefert.
auf 5 PC´wird 451.995 zu 452,00 gerundet(-2)
auf einem zu 451,99 ?
Alles XP mit allen Updates
hier ein Beispiel
ValueListEditor1.Values['x217']:=floattoStr(simpleRoundto(217.995,-2));
//=218 ist OK
ValueListEditor1.Values['x218']:=floattoStr(simpleRoundto(218.995,-2));
//=218,99 F
ValueListEditor1.Values['x219']:=floattoStr(simpleRoundto(219.995,-2));
//=219,99 F
ValueListEditor1.Values['r217']:=floattoStr(Roundto(217.995,-2));
ValueListEditor1.Values['r218']:=floattoStr(Roundto(218.995,-2));
ValueListEditor1.Values['r219']:=floattoStr(Roundto(219.995,-2));
Comment