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

Вниз

Погрешность при делении   Найти похожие ветки 

 
Georg   (2002-04-25 13:15) [0]

Возможно кто-нибудь уже сталкивался с такой проблемой:
есть панель, на нее надо равномерно накидать напр. 9 Бевелей. Делал так:

Bevel.Width := Panel.Width div 9

Однако после последнего Бевеля остается пустое пространство, накапливается погрешность от целочисленного деления. Как можно этого избежать?
Спасибо заранее.


 
Ally ©   (2002-04-25 13:24) [1]

Я думаю, пустое пространство - не погрешность, а остаток от деления, т.е.:

Rem := Panel.Width mod 9;

где Rem - значения остатка от деления, и => ширина этого пустого пространства. Думаю сделать надо так:


Bevel.Width := (Panel.Width + Rem) div 9;


 
Ally ©   (2002-04-25 13:29) [2]

А проще и правильней, наверное будет сдлеать так:


Bevel.Width := Round(Panel.Width / 9)


 
Anatoly Podgoretsky ©   (2002-04-25 13:32) [3]

(Panel.Width - Bevel.Width * 9) < 9



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
3-25996
Ser_Kham1
2002-04-15 17:39
2002.05.09
DOA и ADO


3-25983
Alexander Vasjuk
2002-04-15 12:10
2002.05.09
Как привести NULL к нулю в SQL запросе?


1-26111
alxx
2002-04-23 17:41
2002.05.09
Импорт библиотеки типов


1-26163
Lord BDV
2002-04-24 19:51
2002.05.09
Разработчики Delphi схалтурили


4-26295
SergeySA
2002-03-04 19:15
2002.05.09
Как можно получить handle listbox-а который в чужом окне