/* Programa que calcula el tiempo de conducción dada la distancia y la velocidad media.
Utiliza un bucle cuando se le pregunte al usuario si quiere repetirlo y conteste que sí usando un bucle while. */
#include "stdio.h"
main()
{
int e, v;
char r='s';
while(r=='s')
{
printf("Introduce la distancia recorrida: ");
scanf("%d", &e);
printf("Introduce la velocidad media: ");
scanf("%d", &v);
printf("El tiempo invertido ha sido %d\n", v/e);
printf("¿quieres repetirlo? ");
r=getchar();
}
}
----------------------------------------------------------
Lo ejecuto tanto en Ubuntu como con un compilador en Android (c4droid). El resultado siempre es el mismo, no me leer el último getchar y por tanto el while no se ejecuta.
En la mayoría de libros hacen referencia a conio.h, librería no standar de Borland. Yo por supuesto quiero realizar la tarea de leer un caracter desde el teclado de forma standar a todos los compiladores, pero no me funciona. ¿cuál es la forma correcta para leer un caracter desde teclado? También he intentado incluso usar un scanf("%c", &r)..... sin mayor éxito.
Utiliza un bucle cuando se le pregunte al usuario si quiere repetirlo y conteste que sí usando un bucle while. */
#include "stdio.h"
main()
{
int e, v;
char r='s';
while(r=='s')
{
printf("Introduce la distancia recorrida: ");
scanf("%d", &e);
printf("Introduce la velocidad media: ");
scanf("%d", &v);
printf("El tiempo invertido ha sido %d\n", v/e);
printf("¿quieres repetirlo? ");
r=getchar();
}
}
----------------------------------------------------------
Lo ejecuto tanto en Ubuntu como con un compilador en Android (c4droid). El resultado siempre es el mismo, no me leer el último getchar y por tanto el while no se ejecuta.
En la mayoría de libros hacen referencia a conio.h, librería no standar de Borland. Yo por supuesto quiero realizar la tarea de leer un caracter desde el teclado de forma standar a todos los compiladores, pero no me funciona. ¿cuál es la forma correcta para leer un caracter desde teclado? También he intentado incluso usar un scanf("%c", &r)..... sin mayor éxito.