У меня есть некоторые проблемы, объясняющие ясно, но это довольно просто ..
В моей программе на C ++ есть двойное значение, и я хочу получить его значение Floor, если оно положительное, и Ceil, если оно отрицательное, точность задается внешней переменной.
Пример:
точность составляет 1000
значение равно 0,2659, поэтому приблизительное значение равно 0,265
значение равно -0,2659, поэтому приблизительное значение равно -0,265
Я написал простой код, но мне было интересно, есть ли более простой или / и способ сделать это.
Вот что у меня есть:
void NodeImpl::approximation(double& value, const double& precision)
{
if (value > 0.0)
{
value = std::floor(value * precision);
}
else
{
value = std::ceil(value * precision);
}
value /= precision;
}
Я написал простой код, но мне было интересно, есть ли более простой или / и способ сделать это.