Форум: "Прочее";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
ВнизОкругление вверх кратно пяти как в Excel Найти похожие ветки
← →
Interior (2008-01-10 16:03) [0]Есть ли такая функция в Delphi?
← →
Сергей М. © (2008-01-10 16:05) [1]
> кратно пяти как в Excel
Это что ж за функция такая ?)
← →
@!!ex © (2008-01-10 16:23) [2]> [0] Interior (10.01.08 16:03)
типа:
23 => 25
22 => 20
?
Стандартной нету, пишется ручками минуты за полторы.
← →
homm © (2008-01-10 16:27) [3]> [2] @!!ex © (10.01.08 16:23)
> типа:
нет. Округление вверх.
23 => 25
22 => 25
← →
@!!ex © (2008-01-10 16:28) [4]> [3] homm © (10.01.08 16:27)
Понял... Но сути не меняет, все равно элементарно деется.
← →
Home (2008-01-10 21:22) [5]И как?
← →
Interior (2008-01-10 21:24) [6]Пардон. И как?
Из-за неточного округления некоторые числа неправильно округляются,
например должно получится 225 а получается 220. Мешают как обычно 9999999 после запятой.
← →
Dib@zol © (2008-01-10 21:29) [7]Ну дыкъ! Сначала дели на 5, потом округляй, а потом умножай на 5!
← →
@!!ex © (2008-01-10 21:32) [8]Что нить типа:
Function RoundUp(Value:single; Step:integer):integer;
begin
Result:=Round(Value+0.5);
if Result mod Step>0 then
Result:=Result+(Step-(Result mod Step));
end;
← →
Dib@zol © (2008-01-10 23:17) [9]Или вот так :)
function RoundUp(Value:single; Step:integer):integer;
const PHI : single = 0.00000001;
asm
FLD PHI;
FLD Value;
PUSH EAX;
FIDIV DWORD PTR [ESP];
FADDP;
FRNDINT;
FIMUL DWORD PTR [ESP];
FISTP DWORD PTR [ESP];
POP EAX;
end;
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.042 c