Вниз
Скачать: CL | DM;

Округление вещественных чисел   Найти похожие ветки 

 
Lika   (2004-10-15 16:53) [0]

Здравствуйте, подскажите пожалуйста округляю вещественное число до двух знаков Round(chislo*100)/100, округляет неправильно (в тысячных пятерка поэтому к сотым должна прибавляться 1, а она не прибавляется) Не знаю что мне делать, уже прочитала и кучу стотей про округление и алгоритмы другие попробовала,а оно не как. Подскажите пожалуйста как быть?


 
Johnmen ©   (2004-10-15 17:00) [1]

Читать про математическое и бухгалтерское округление.
PS 1.235 не так, как 1.245


 
LM2   (2004-10-15 17:39) [2]

function FormatFloat(var Value : Double; var K{кол-во знаков после запятой} : Integer): Double;
const K10 : array [0..10] of Double = (1,10,100,1000,10000,100000,
                                      1000000,10000000,100000000,
                                      1000000000,10000000000);
begin
  Result := ( Round ( Value * K10[K] + 1/K10[K+1] ) ) / K10[K];
end;


 
Nikolay M. ©   (2004-10-15 20:08) [3]


> const K10 : array [0..10] of Double = (1,10,100,1000,10000,100000,
>                                       1000000,10000000,100000000,
>                                       1000000000,10000000000);

Извращенец :)
10 shl k - попробуй, вставляет :)



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
1-1098966076
Николай
2004-10-28 16:21
2004.11.14
Методы борьбы с ошибками


14-1098685930
snake1977
2004-10-25 10:32
2004.11.14
Вопрос новичка


14-1098451515
Вася (типа)
2004-10-22 17:25
2004.11.14
Про иппотечное кредитование


4-1096881300
Plotnick
2004-10-04 13:15
2004.11.14
Как поместить форму на диалоговое окно другой программы


1-1099053212
Vadik2k
2004-10-29 16:33
2004.11.14
Как перехватить изменение размеров кнопки




   Наверх