Russian Qt Forum

Программирование => С/C++ => Тема начата: pakulo от Июль 04, 2007, 09:36



Название: Округлить в большую сторону
Отправлено: pakulo от Июль 04, 2007, 09:36
Как можно округлить число в большую сторону в любом случае.
Т.е. если 6/5=2, а не 1.
З.Ы.
Сорри что не по разделу спрашиваю, но я так посмотрел что здесь активность больше :)


Название: Округлить в большую сторону
Отправлено: Steven_Orko от Июль 04, 2007, 09:44
Код:

int roundTo(double dValue)
{
 int iValue = static_cast<int>(dValue);
 return ((dValue - iValue) > 0)?  iValue + 1: iValue;
}


Название: Округлить в большую сторону
Отправлено: Admin от Июль 04, 2007, 11:04
еще есть в С функции floor и ceil


Название: Округлить в большую сторону
Отправлено: pakulo от Июль 04, 2007, 11:43
спасибо за ответы!


Название: Re: Округлить в большую сторону
Отправлено: spectre71 от Май 28, 2009, 07:23
Типичная ситуация
M/N - где M и N целое > 0

Наиболее простым и эффективным является:

(M+N-1)/N