Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

округление [D7, WinXP]


Archy ©   (2006-04-26 19:04:00) 

как млжно округлить результат делени до 3-х знаков после запятой?


icWasya   (2006-04-27 12:52:00) [1]

и посмотреть вот это
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1217


balepa   (2006-04-27 09:16:00) [2]


> Archy   (26.04.06 19:39) [6]
> Спасибо.....!
> да мне обрезание не нужно :)


Ну вот, а я ножик уже наточил :)


Archy   (2006-04-26 19:39:00) [3]

Спасибо.....!
да мне обрезание не нужно :)


Джо   (2006-04-26 19:35:00) [4]

> [4] Archy   (26.04.06 19:26)
>
> > Нормально, согласно спецификации.
>
> нет, я имею в виду как его применять?

Посмотреть справку по ним это, конечно, дольше, чем ждать в форуме ответов?

 A := 0.526538721653;
 ShowMessageFmt ('%.5f',[SimpleRoundTo(A,-3)]);
 ShowMessageFmt ('%.5f',[RoundTo(A,-3)]);


Обрезание, а не округление, можно, как я и говорил, сделать руками так, как нравится, например, так:

 function TruncTo (const A: Double; Digits: Integer): Double;
 var
   Base: Double;
 begin
   Base := IntPower(10,Digits);
   Result := Trunc(A*Base)/Base
 end;


Пример:

 ShowMessageFmt ('%.5f',[TruncTo(A,3)]);


Archy   (2006-04-26 19:26:00) [5]


> Нормально, согласно спецификации.

нет, я имею в виду как его применять?
к примеру :
a:0.526538721653
и чтоб его по правилам округлить куда в код вписывается
RoundTo, SimpleRoundTo


Джо   (2006-04-26 19:22:00) [6]

> [2] Archy   (26.04.06 19:18)
> как работает RoundTo, SimpleRoundTo?

[b]Нормально, согласно спецификации.[/b]


Archy   (2006-04-26 19:18:00) [7]

как работает RoundTo, SimpleRoundTo?


Джо   (2006-04-26 19:08:00) [8]

RoundTo, SimpleRoundTo или "руками": умножаешь на 1000, отбрасываешь дробную часть (Trunc), делишь на 1000.


Наверх

Титульная страница Поиск, карта сайта Написать письмо