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...
Mejor pon el código que llevas, a ver si nos enteramos mejor.
Saluditos!.
#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);
}
Cita de: WyliFlech en 13 Febrero 2013, 22:22 PM
................... 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!.
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?
Citar¿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
Citarwhile (getchar ()!='\n');
no preguntaste por esto asi q supongo q lo entendes. Saludos