Autor
|
Tema: Ayuda con getchar:( (Leído 3,689 veces)
|
TopoJunior
Desconectado
Mensajes: 40
|
Bueno, hola a todos! El caso es que estoy haciendo un programa, el ahorcado, la palabra inicial (van a ser 3) es FUTBOL, y yo puse: IF. Si ... ch es igual a 'f' entonces ponla en el printf, que sería F _ _ _ _ Vale, si no se cumple, un else que sume 1 a errores y y diga cuantos errores llevas. Bien. hasta aquí bien... Peeeeeeeeeeeeeeeeeeeeeeeeeeeeeeero, si tu pones U, que pertenece a la palabra, te dice que has fallado, como hago para que eso no pase? En el sentido de que, que tengo que hacer para que reconozca la U ? pero antes de la F por ejemplo.. No sé si me expliqué bien...
|
|
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
Mejor pon el código que llevas, a ver si nos enteramos mejor. Saluditos!.
|
|
|
En línea
|
|
|
|
TopoJunior
Desconectado
Mensajes: 40
|
#include <stdio.h> #include <time.h> #include <conio.h>
main() { char ch; char ch1; int errores1; errores1 = 0; srand (time(NULL)); int aleatorio; aleatorio = rand() % 3+1; if(aleatorio == 2) { printf("Te ha tocado esta palabra\n"); // La palabra es FUTBOL printf("_ _ _ _ _ _"); printf("Ve escribiendo las letras\n"); ch=getchar(); if(ch == 'f') { printf("Bien, has acertado. F _ _ _ _ _\n"); if(ch1 == 'u') { printf("Has acertado. FU _ _ _ _\n"); } } else { errores1++; printf("Has fallado. Llevas %d errores.", errores1); } } while(1); }
|
|
|
En línea
|
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
................... Peeeeeeeeeeeeeeeeeeeeeeeeeeeeeeero, si tu pones U, que pertenece a la palabra, te dice que has fallado, como hago para que eso no pase? En el sentido de que, que tengo que hacer para que reconozca la U ? pero antes de la F por ejemplo.. No sé si me expliqué bien...
Por ejemplo:#include <stdio.h> #include <time.h> int main(){ char ch; char ch1; int errores1; errores1 = 0; srand (time(NULL)); int aleatorio; aleatorio =+1 +rand() % 3; //if(aleatorio == 2) printf("Te ha tocado esta palabra\n"); // La palabra es FUTBOL printf("_ _ _ _ _ _"); printf("Ve escribiendo las letras\n"); ch=getchar(); while (getchar ()!='\n'); if(ch == 'f') { printf("Bien, has acertado. F _ _ _ _ _\n"); } else if(ch == 'u') { printf("Has acertado. _U _ _ _ _\n"); } else { errores1++; printf("Has fallado. Llevas %d errores.\n", errores1); } return 0; }
Saluditos!.
|
|
|
En línea
|
|
|
|
TopoJunior
Desconectado
Mensajes: 40
|
Gracias, y una cosa, como hago esto ? Si tu tienes el IF ch == 'f' entonces pondrá F _ _ pero si pongo U luego, pondrá _ u _ _ _ ¿Como hago para que se quede la F?
|
|
|
En línea
|
|
|
|
durasno
Desconectado
Mensajes: 373
|
¿Como hago para que se quede la F? revisa el tema de arreglos, con eso lo podes solucionar. Luego para q puedas ingresar varios caracteres tenes que poner todo dentro de un bucle while (getchar ()!='\n'); no preguntaste por esto asi q supongo q lo entendes. Saludos
|
|
|
En línea
|
Ahorrate una pregunta, lee el man
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
problema con getchar()
Programación C/C++
|
juanigato
|
5
|
9,489
|
23 Diciembre 2013, 19:47 pm
por leosansan
|
|
|
Ayuda con getchar
Programación C/C++
|
prometheus48
|
6
|
3,370
|
31 Diciembre 2011, 21:36 pm
por Unbr0ken
|
|
|
Funcio Getchar();
GNU/Linux
|
Odai
|
5
|
4,865
|
8 Febrero 2012, 15:57 pm
por Odai
|
|
|
Borrar buffer , como funciona getchar
Programación C/C++
|
Jomad205
|
2
|
10,608
|
13 Noviembre 2012, 17:23 pm
por Jomad205
|
|
|
Problema con while y getchar.
Programación C/C++
|
Spinerker
|
3
|
2,822
|
17 Octubre 2013, 14:18 pm
por Eternal Idol
|
|