Как показать, что выводится float, если он хранит только целую часть?
На самом деле лучше показать на примере:
int a = 5;
float b = 5.7;
float c = 7;
std::cout << a << " " << b << " " << c;
По факту получается 5 5.7 7, а я хочу 5 5.7 7.0. Можно ли это как-то реализовать? Мне не нужно форматировать все числа, например с std::scientific, мне нужно просто добавлять .0, если у float есть только целая часть.
С точки зрения реализации есть два метода, которые принимают int и float, поэтому сделать просто std::to_string(c) + ".0" не получится.
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int a = 5;
float b = 5.7;
float c = 7;
cout << fixed << setprecision(1) << a << " " << b << " " << c;
}