Цитата(AHTOXA @ Aug 20 2009, 13:50)

Тогда может быть не хватает одного слова "long" в следующей строке:
Код
(unsigned long)delivery.request_perc)/
?

Допустим. Но в примере, который работает
Код
ccc= aaa*delivery.request_perc;
,
то есть тип delivery.request_perc остается вообще unsigned int.
Получается, что привели к unsigned long - стало хуже, чем если оставить unsigned int ?
Цитата(rezident @ Aug 20 2009, 14:45)

И суффикса U или скорее даже ULL у константы 10000.
10000 - это 100% в сотых долях. Соответственно, при проверке из этого значения вычитается 500 - 5% в сотых долях.
Проценты в процессе работы не изменяются. То есть приводить до вычитания не имеет смысла. Приводить после - тоже, это делитель.
Но, как оказывается, все это фигня. Ну нашел я, как правильно записать. Использовать не могу - не хватает времени на работу с long long в риалтайме.
Чеховское "В Москву, в Москву!" теперь звучит так -> скорее на ARM!
Только уже поздно, нужно как-то выкручиваться.
Уходя, оставьте свет...