C++ Муки округления. Как «красиво» сделать следующие функции? Приветствую
Есть, к примеру, число типа double 43.21000
требуетс
привести число к виду 43.210000000
т.е. оставить число до сотых, остальное забить нулями (например до 4 после сотых).
так же требуется потом просто убрать точку т.е. сделать число "целым" без округлений
Сделал через строку, но это напоминает адцкий костыль.
Подскажите, пожалуйста, как правильнее?

21 Авг 2019 в 06:11
123 +1
1
Ответы
1

Вот пример кода на C++, который выполняет указанные вами задачи без использования строк:

#include <iostream>
#include <cmath>
double roundToNDecimals(double value, int decimals)
double factor = pow(10, decimals)
return round(value * factor) / factor

double removeDecimalPoint(double value)
return floor(value)

int main()
double number = 43.210002
// Округляем до 4 знаков после запято
double roundedNumber = roundToNDecimals(number, 4)
std::cout << "Округленное число: " << roundedNumber << std::endl
// Убираем точк
double integerNumber = removeDecimalPoint(number)
std::cout << "Число без десятичной части: " << integerNumber << std::endl
return 0
}

Этот код определяет две функции: roundToNDecimals, которая округляет число до указанного количества десятичных знаков, и removeDecimalPoint, которая просто убирает десятичную точку.

Надеюсь, это поможет вам решить вашу задачу более "красиво" и без использования строк.

20 Апр в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 90 581 автору
Первые отклики появятся уже в течение 10 минут
Прямой эфир