Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

ОКРУГЛЕНИЕ   Найти похожие ветки 

 
zaw   (2005-06-03 14:12) [0]

Почему функция RoundTo не округляет число 275.975 правильно
var
Double1, double2, double3, double4: double;
begin
Double1 := 3.5;
Double2 := 78.85;
Double2 := 78.89;

Double3 := RoundTo(Double1 * Double2, -2); // 275.97
Double4 := RoundTo(Double1 * Double2, -2); // 276.12

Label1.Caption := FloatToStr(Double3);
Label2.Caption := FloatToStr(Double4);  
end;


 
Anatoly Podgoretsky ©   (2005-06-03 14:30) [1]

По тому что ни о каком округлении для чисел с плавающей запятой говорить не приходится.
Округление это вообще тогда когда число круглое, никаких знаков после запятой.
Здесь же делается некоторый психологический обман, число умножается на 10^N, затем округляется, после опять делится на туже величину, после чего мы имеем опять не округленое число, при этом никто не гарантирует, что оно будет равно N / 10^N


 
panov ©   (2005-06-03 14:35) [2]

>zaw   (03.06.05 14:12)
И не надо так орать.


 
zaw   (2005-06-03 14:37) [3]

как выйти из ситуации?


 
Ega23 ©   (2005-06-03 14:38) [4]

как выйти из ситуации?

С позором. Или с честью.  На твой выбор.


 
zaw   (2005-06-03 14:51) [5]


> Ega23 ©   (03.06.05 14:38) [4]

Вышел с честью, вместо double надо было использовать extended


 
Anatoly Podgoretsky ©   (2005-06-03 15:32) [6]

Никуда ты не вышел, ты просто отодвинул границу.



Страницы: 1 вся ветка

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.057 c
14-1117827326
Alx2
2005-06-03 23:35
2005.06.29
Прошу помощи астрофизиков! СРОЧНО!


14-1117602690
Vlad Oshin
2005-06-01 09:11
2005.06.29
Извините за вчерашнее.


14-1117373371
Магнум
2005-05-29 17:29
2005.06.29
Библиотека иконок ICL


1-1117947403
Chak
2005-06-05 08:56
2005.06.29
по нажатию клавиши ENTER из одной labelededit1 в другую labeleded


1-1118017641
dp200
2005-06-06 04:27
2005.06.29
OpenDialog , открытие нескольких файлов