Ayuda con un programa
Hola amigos:
Nunca he visto programacion y estoy un poco verde en la materia, desde la universidad me mandan hacer un programa que cambie grados Fahrenheit a Celsius. Lo escribo y me sale que los celsius son 0, os lo voy a pegar aqui a ver si alguien me puede solucionar el fallo.
Un saludo y muchas gracias
#include<stdio.h>
#include<stdlib.h>
main ()
{
float TC,TF;
printf("Introduce los grados Fahrenheit: ");
scanf("%f",&TF);
TC= (5/9)*(TF-32);
printf("nnLa conversion en grados Celsius es: %.2fnnn",TC);
system("PAUSE");
}
Nunca he visto programacion y estoy un poco verde en la materia, desde la universidad me mandan hacer un programa que cambie grados Fahrenheit a Celsius. Lo escribo y me sale que los celsius son 0, os lo voy a pegar aqui a ver si alguien me puede solucionar el fallo.
Un saludo y muchas gracias
#include<stdio.h>
#include<stdlib.h>
main ()
{
float TC,TF;
printf("Introduce los grados Fahrenheit: ");
scanf("%f",&TF);
TC= (5/9)*(TF-32);
printf("nnLa conversion en grados Celsius es: %.2fnnn",TC);
system("PAUSE");
}
A primera vista, el fallo es que el factor de conversi贸n 5/9 te lo ha debido de coger como divisi贸n de n煤meros enteros, con lo que la divisi贸n entera de 5 entre 9 da 0. Prueba a poner (5.0 / 9.0).
Cuando operes constantes con n煤meros reales (float o double), conviene poner, por si acaso, un punto decimal y un cero en el caso de que tu constante no lleve parte decimal. As铆 te aseguras de que el compilador te coge la constante como n煤mero real y no como entero.
Saludos,
Cuando operes constantes con n煤meros reales (float o double), conviene poner, por si acaso, un punto decimal y un cero en el caso de que tu constante no lleve parte decimal. As铆 te aseguras de que el compilador te coge la constante como n煤mero real y no como entero.
Saludos,
