Почему значение k возвращает 0? Пожалуйста помоги.C++: преобразователь температуры - почему расчет возвращается 0
double fah, kel;
fah = std::atof(input.c_str()); //convert string input to a double & assign value to be fah degree
kel = (double)((f + 459.67) * (5/9)); //calculate fah temp to kelvin
k значение возвращает 0, когда я добавляю «5/9» к расчёту.
Почему только одно из этих двух чисел должно быть в десятичной форме? – user2925557
@ user2925557 достаточно, чтобы один из операндов оператора деления '/' был типом с плавающей запятой (FP) для операции, которая должна быть рассчитана в FP (и результатом операции FP) – juanchopanza
@ user2925557 an операция «int/double» или «double/int» автоматически повышается до результата «double». Для удобства чтения часто бывает полезно писать как двойную, хотя и не обязательную. –