Std::format указывает количество значащих цифр, но никогда не переключается на нотацию «e».C++

Программы на C++. Форум разработчиков
Anonymous
Std::format указывает количество значащих цифр, но никогда не переключается на нотацию «e».

Сообщение Anonymous »

Мне нужно отформатировать значения с двумя значащими цифрами, но никогда не использовать обозначение «e».
Ожидаемый результат:

Код: Выделить всё

9.3
6.6
4.6
3.2
2.3
1.6
1.1
760
520
340
200
96
0
Он использует префиксы СИ для каждого коэффициента 10^3. Пробовал

Код: Выделить всё

std::format("{:.2g}", value);
Но он сам решает, когда перейти на нотацию «е»:

Код: Выделить всё

9.3
6.6
4.6
3.2
2.3
1.6
1.1
7.6e+02
5.2e+02
3.4e+02
2e+02
96
0
Примечание. Я специально прошу метод, не использующий строковый поток.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ch-to-e-no

Вернуться в «C++»