Я ожидал, что результатом будет 87.29. Я также попробовал SimpleRoundTo, но дал тот же результат.
В справочной системе также есть "странный" пример: мс-помощь://embarcadero.rs2010/vcl/Math.RoundTo.html
RoundTo(1.235, -2) => 1.24
RoundTo(1.245, -2) => 1.24 //???
Кто-нибудь знает, какая функция мне нужна, чтобы получить результат 87.29? Я имею в виду: если последняя цифрa > 5 округляется вверх, если < 5 раунд вниз. Как учили в школе:)
Я использую Delphi2010 и SetRoundMode(rmNearest)
. Я также пробовал с помощью rmTruncate
.
Значение 87.285 хранится в переменной double
.
Также странно:
SimpleRoundTo(87.285, -2) => 87.29
но
x := 87.285; //double
SimpleRoundTo(x, -2) => 87.28