Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
stdstring
0 / 0 / 0
Регистрация: 24.04.2014
Сообщений: 7
#1

Записать число в строку в заданном формате - C++

24.04.2014, 23:35. Просмотров 414. Ответов 1
Метки нет (Все метки)

Добрый день.
Есть число double от 0 до 99. Нужно записать его в std::string в виде XX.XXXX.
К сожалению не придумал ничего лучше чем
C++
1
2
3
4
5
6
7
8
9
10
11
12
void double_to_str(std::string& str, double dval){
    if (dval<0||dval>99)
    {
        throw bad_val(dval);
    }
    if (dval<10)
    {
        str+='0';
    }
    str+=std::to_string(dval);
    str=str.substr(0,7);
}
Меня не покидает ощущение что это можно сделать не так криво.
Буду благодарен за подсказку как сделать этот код более красивым.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2014, 23:35     Записать число в строку в заданном формате
Посмотрите здесь:

C++ Вывести дату в заданном формате
Как записать число в строку? C++
C++ Программа на С, которая вводит число типа int с клавиатуры, преобразует ее в строку (str), выводит на дисплей число и строку.
Описать строку А. Из входной последовательности символов записать в строку А только цифры C++
Как записать число в строку? C++
C++ Записать пятизначное число в строку, с отступом в 3 пробела между каждой цифрой
Вывести двоичный код в массив в заданном формате C++
Необходимо записать в пустую строку число (ASCII код) C++
Написать функцию, выводящую время, введённое пользователем, в заданном формате C++
Вывести значение n-го члена арифметической прогрессии в заданном формате C++
Запросить на ввод значения часов и минут и вывести их в заданном формате C++
C++ Записать данные решения системы уравнения в текстовом и бинарном формате

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Меорн
74 / 59 / 29
Регистрация: 01.02.2014
Сообщений: 202
25.04.2014, 11:11     Записать число в строку в заданном формате #2
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <iomanip>
int main()
{
    double d = 91.1234111;
    std::cout << std::fixed << std::setprecision(4) << std::setw(7) << std::setfill('0') << d << std::endl;
    system("pause");
}
Yandex
Объявления
25.04.2014, 11:11     Записать число в строку в заданном формате
Ответ Создать тему
Опции темы

Текущее время: 16:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru