Я вижу много вопросов о числе точности чисел с плавающей запятой, но особенно хочу знать, почему этот код
#include <iostream>
#include <stdlib.h>
int main()
{
int a = 5;
int b = 10;
std::cout.precision(4);
std::cout << (float)a/(float)b << "\n";
return 0;
}
показывает 0.5
? Я ожидаю увидеть 0.5000
.
Это из-за исходных целочисленных типов данных?