Estoy escribiendo un programa para una clase que estoy dentro y necesito un poco de ayuda con un programa para la conversión de Fahrenheit a Celsius en C. Mi código es el siguienteprograma en C para convertir grados Fahrenheit a Celsius
#include <stdio.h>
int main (void)
{
int fahrenheit;
double celsius;
printf("Enter the temperature in degrees fahrenheit:\n\n\n\n");
scanf("%d", &fahrenheit);
celsius = (5/9) * (fahrenheit-32);
printf ("The converted temperature is %lf\n", celsius);
return 0;
}
Cada vez que lo ejecuto, el resultado es 0.000000. Sé que me estoy perdiendo algo pero no puedo entender qué.
Se está trabajando con números enteros, es necesario trabajar con flotadores o dobles. – Joe
Nota al margen, los compiladores generalmente consideran 5.0 un doble. Tienes que decir 5.0f para hacer cálculos de valores flotantes. Parece más relevante para el móvil –