Hola Gente , les vengo a pedir ayuda sobre un programa , que esta en un manual de c , el codigo es este
#include <stdio.h>
#define LOWER 0
#define UPPER 300
#define STEP 20
main()
{
int fahr;
for(fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP);
printf("%3d%6.1f\n", fahr,(5.0/9.0)*(fahr-32));
getch();
}
ejecuta todo lo mas bien , pero me muestra solamente dos números , que según el manual me tendria que mostrar toda la tabla de temperatura fahrenheit y celsius , la verdad ni idea que puedo estar haciendo mal , si alguien me puede ayudar le agradecería mucho , saludos !
El problema es el punto y coma justo despues del bucle for:
for(fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP); /* <== */
printf("%3d%6.1f\n", fahr,(5.0/9.0)*(fahr-32));
Cambialo a:
for(fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP)
printf("%3d%6.1f\n", fahr,(5.0/9.0)*(fahr-32));
Un saludo
Muchisimaaas graciaas !
perdon que moleste de nuevo pero para no crear otro post , lo hago aca , ahora que ya solucione el problema tengo que hacer este mismo programa :
#include <stdio.h>
#define LOWER 0
#define UPPER 300
#define STEP 20
main()
{
int fahr;
for(fahr = LOWER; fahr <= UPPER; fahr = fahr + STEP)
printf("%3d%6.1f\n", fahr,(5.0/9.0)*(fahr-32));
getch();
}
pero en vez de empezar desde 0 y terminar en 300 , tiene que empezar en 300 y terminar en 0 , intente de cambiar LOWER por UPPER , pero no funciona , alguna idea ?
No sólo debes cambiar LOWER por UPPER, sino que también tienes que cambiar las demás condiciones del for!
for (fahr = UPPER; fahr >= LOWER; fahr = fhar - 1)
Así va de 300 hasta 0 inclusive!
muchas gracias lo unico que no queria que reste de 1 en 1 , sino de 20 en 20 , a que si le cambie eso , yo hacia eso , como vos lo hiciste lo unico que en
fahr >= LOWER
lo hacia asi
fahr <= LOWER
muchas gracias por la ayuda