Игорь
Игорь

C++ вывести число до 5 знаков

В выходной файл OUTPUT.TXT выведите ответ с точностью 10^-5.

Не могу сделать так что бы выводился ответ в файл с точностью до 5 знаков.
Тоесть если ответ у меня получился 3, то в файл надо вывести 3.00000, а если 3.4999999, то 3.49999 и т. д

Впринципе это можно реализовать через fprintf "%.5f", но я работаю с через файловый поток fstream, а у
fprintf первый параметр это указатель на переменную FILE.

у меня есть мысль сделать так:
если ответ 3, тоесть целое число, то в файл вывести 3 и еще .00000
а если ответ 3.1234567, тоесть после запятой больше 5 символов то можно сделать, так:
k = 3.1234567;
k *= 100000;
k = round(k);
k = k / 10000;

если ответ 3.1234, если меньше пяти цифр после запятой НО больше 0, тогда выводим 3.1234(ответ) и дополняем нулями сколько надо до 5 цифр.

Это конечно получается порнуха, но я другого варианта не вижу.

Может что то разумное подскажете? а что стыдно таким извращенным способом это делать) )
только ненадо через printf/fprintf

Ravil
Ravil

гугль никто не отменял!

std::cout.setf(std::ios::fixed);
std::cout.precision(5);
std::cout << d;

Гоголь жив!

Похожие вопросы
Вывести таблицу ASCII (символы, числа) C++
Как в C++ при помощи cout вывести число размером, скажем 15 разрядов без экспоненты
C++. Как найти наименьшее число и вывести, из трех переменных double?
Как на С++, выводить число double, до 5 знаков?
C клавиатуры вводится число. вывести 5 чисел, идужих за ними, умноженных на 7. (Paskal ABC)
PHP Как вывести знак $
C++. Как вывести числа из массива char в файл.?
Дан текст, содержащий целые числа. Вывести на экран все имеющиеся в нем числа. в c++
Вывести число. Ассемблер. DOS Как вывести число (оно высчитывается) на экран?
Как в C++ вывести число с определенной точностью после запятой, сохраняя нули?