#include <boost/math/special_functions/round.hpp>
template <class T>
T round(const T& v);
template <class T, class Policy>
T round(const T& v, const Policy&);
template <class T>
int iround(const T& v);
template <class T, class Policy>
int iround(const T& v, const Policy&);
template <class T>
long lround(const T& v);
template <class T, class Policy>
long lround(const T& v, const Policy&);
template <class T>
long long llround(const T& v);
template <class T, class Policy>
long long llround(const T& v, const Policy&);
Эти функции возвращают наиболее близкое целое число к аргументуv.
На полпути дела округляются от нуля, независимо от текущего направления округления.
Если аргументпротивявляется либо неокончательным, либо вне диапазона типа результата, то возвращает результатокругления_ошибки: По умолчанию это приводит к<boost::math::rounding_error>.