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

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

Округлить [D6, XP]


Marat ©   (2007-04-26 15:05:00) 

Мне необходимо округлить число 8,1563 до 8,16.
А если попадется вот такое- 12,8435, то до 12,84.
То есть если третья после запятой больше или равно пяти, то +1, а если меньше то без изменений.


stakan   (2007-04-26 15:23:00) [1]

SimpleRoundTo


Marat   (2007-04-26 15:17:00) [2]

Спасибо.


McSimm_   (2007-04-26 15:16:00) [3]

Иногда проще сразу воспользоваться функциями форматирования строк.


zdm   (2007-04-26 15:15:00) [4]

TRUNC(8.1563 *100+0.5)/100=8.16
TRUNC(12.8435 *100+0.5)/100=12.84 соответственно если нужно до 3 цифр, то и умножаешь/делишь на 1000 , а прибовляешь 0.05 и т.д.


Marat   (2007-04-26 15:10:00) [5]

я просто хочу узнать можно ли такое осуществить не "разбирая" число по составным


zdm   (2007-04-26 15:10:00) [6]

RoundTo() ведет к бухгалтерскому округлению, а если хочешь арефмитическое, то  в твоем случае, примерно так
commiss:=TRUNC(price/100*pr_val *100+0.5)/100;


Сергей М.   (2007-04-26 15:09:00) [7]

Удалено модератором


Наверх

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