Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Función char con dos preguntas

Estas en el tema de Función char con dos preguntas en el foro de C/C++ en Foros del Web. Hola! Tengo que hacer un algoritmo donde tengo que hacer una pregunta inicial. Si la respuesta el negativa me tiene que dar un mensaje y ...
  #1 (permalink)  
Antiguo 13/03/2013, 11:42
 
Fecha de Ingreso: marzo-2013
Ubicación: Girona
Mensajes: 2
Antigüedad: 11 años, 1 mes
Puntos: 0
Pregunta Función char con dos preguntas

Hola!
Tengo que hacer un algoritmo donde tengo que hacer una pregunta inicial. Si la respuesta el negativa me tiene que dar un mensaje y si es positiva me da otra pregunta, donde tiene nuevamente un si o un no como respuesta. Mi pregunta es, ¿como hago para que el primer negativo no me afecte a la segunda pregunta y solo me salga el mensaje que le corresponde?
Gracias!!!!
  #2 (permalink)  
Antiguo 13/03/2013, 12:01
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: Función char con dos preguntas

Escanea la respuesta sobre el mismo buffer para sobreescribirlo, de esta forma para cada pregunta tienes una nueva respuesta; si estas trabajando en consola asegurate de vaciar el stdin antes de aceptar nuevos datos.

Saludos
vosk
  #3 (permalink)  
Antiguo 13/03/2013, 12:24
 
Fecha de Ingreso: marzo-2013
Ubicación: Girona
Mensajes: 2
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Función char con dos preguntas

No tengo tantos conocimientos para hacer lo que dices. Solo utilizo las condiciones if y else. La cuestión es que el primer no de la primera pregunta también me coge el segundo no de la segunda pregunta.En la primera pregunta solo me tendría que salir un mensaje, no dos.
Gracias de todos modos!!!
  #4 (permalink)  
Antiguo 13/03/2013, 13:34
 
Fecha de Ingreso: agosto-2012
Mensajes: 601
Antigüedad: 11 años, 8 meses
Puntos: 83
Respuesta: Función char con dos preguntas

"...No tengo tantos conocimientos para hacer lo que dices..."

Si postearas el codigo que tienes echo tal vez sería mas facil encontrar la solucion (tranquilo que nadie va robarte el codigo); de momento me parece que una vez entrada la primera respuesta no vacias el stdin, aquí tienes una minifuncion para hacerlo

Código:
void flush_stdin() {
    while(getc(stdin) != '\n');
}
Es decir: muestras una pregunta, escaneas la respuesta y llamas a flush_stdin(), luego evaluas la respuesta y en base al resultado planteas la nueva pregunta o finalizas

Saludos
vosk

Etiquetas: char, preguntas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:30.