Título: Duda con ahorcado en C Publicado por: folostia en 26 Diciembre 2011, 12:26 pm Estoy intentando hacer el juego del ahorcado en C con lo más básico (if,while,for,case..) pero me quedé estancado.Aquí os dejo mi código para que veáis lo que he hecho hasta ahora y a ver si me podéis ayudar a seguir.
Código: /*Juego del ahorcado*/ Gracias de antemano Título: Re: Duda con ahorcado en C Publicado por: ZedGe en 26 Diciembre 2011, 13:37 pm dinos en que parte exactamenet te quedaste estancado.... seria mas rapido
Título: Re: Duda con ahorcado en C Publicado por: folostia en 27 Diciembre 2011, 10:43 am Pues en primer lugar me gustaría saber cómo se ponen tantos guiones bajos como letras tenga la palabra.
Y lo que más difícil me parece es cuando se introduce la letra,poner las letras "buenas" en el lugar que les corresponde,no sé si me explico- Un saludo Título: Re: Duda con ahorcado en C Publicado por: Ferno en 27 Diciembre 2011, 14:36 pm Y bueno tienes varias formas de hacerlo.
La primera vez que imprimas los guiones bajos para la palabra entera, solo debes imprimir la cantidad de caracteres de la palabra, para ello usa strlen() sobre cada char*, y con un loop será suficiente. Para ir escribiendo cada letra, tendrás que ir limpiando la pantalla y volver a reescribir cada palabra, pero esta vez con las letras acertadas correspondientes. Puedes tener algún flag en el arreglo que te diga si la letra correspondiente fue acertada. Si es así, en el loop de impresión imprimís la letra, sino, un guión bajo! Título: Re: Duda con ahorcado en C Publicado por: folostia en 27 Diciembre 2011, 16:39 pm Y bueno tienes varias formas de hacerlo. Lo primero no hay otra forma de hacerlo? es que nunca he utilizado strlen() ni loop,tengo que hacerlo con lo más básico... pero muchas gracias por la respuestaLa primera vez que imprimas los guiones bajos para la palabra entera, solo debes imprimir la cantidad de caracteres de la palabra, para ello usa strlen() sobre cada char*, y con un loop será suficiente. Para ir escribiendo cada letra, tendrás que ir limpiando la pantalla y volver a reescribir cada palabra, pero esta vez con las letras acertadas correspondientes. Puedes tener algún flag en el arreglo que te diga si la letra correspondiente fue acertada. Si es así, en el loop de impresión imprimís la letra, sino, un guión bajo! un saludo Título: Re: Duda con ahorcado en C Publicado por: Ferno en 27 Diciembre 2011, 17:39 pm El for es un loop. Loop es sinónimo de repetición, con un loop uno hace referencia al for, while, do-while... y eso sí lo has utilizado!
Con respecto a strlen(), ¿Por qué no buscar en google un poco de info? es MUY SIMPLE de usar! http://www.elook.org/programming/c/strlen.html Título: Re: Duda con ahorcado en C Publicado por: folostia en 27 Diciembre 2011, 18:06 pm El for es un loop. Loop es sinónimo de repetición, con un loop uno hace referencia al for, while, do-while... y eso sí lo has utilizado! Ah vale querías decir un bucle,eso sí lo he utilizado.Lo del strlen() no sé si lo podré utilizar ya que es para un trabajo de clase.De todas formas gracias por la aportación.Con respecto a strlen(), ¿Por qué no buscar en google un poco de info? es MUY SIMPLE de usar! http://www.elook.org/programming/c/strlen.html saludos Título: Re: Duda con ahorcado en C Publicado por: Ferno en 27 Diciembre 2011, 18:20 pm Ok, básicamente, strlen() te devuelve la cantidad de caracteres de un char*. En este caso, cuantas letras posee cada palabra.
Entonces, para simularlo simplemente puedes recorrer cada char* (es decir cada palabra) con un bucle y utilizar un contador para ver cuantas letras posee cada palabra (el bucle iría desde el inicio hasta encontrar el carácter '\0' de fin de cadena). Espero que se haya entendido. Título: Re: Duda con ahorcado en C Publicado por: folostia en 27 Diciembre 2011, 18:25 pm Ok, básicamente, strlen() te devuelve la cantidad de caracteres de un char*. En este caso, cuantas letras posee cada palabra. sisi entendí la idea y te lo agradezco mucho,pero voy a reutilizar código de un programa que hice hace tiempo para contar las letras de una palabra.Entonces, para simularlo simplemente puedes recorrer cada char* (es decir cada palabra) con un bucle y utilizar un contador para ver cuantas letras posee cada palabra (el bucle iría desde el inicio hasta encontrar el carácter '\0' de fin de cadena). Espero que se haya entendido. Según me vayan surgiendo dudas las iré poniendo aquí ;D ;D Un saludo a todos y felices fiestas :) Título: Re: Duda con ahorcado en C Publicado por: Sagrini en 28 Diciembre 2011, 19:51 pm Ahora queda hacer que dibuje un muñequito jajaja ;) Sólo téneis que compilar y crear un fichero en "/var" llamado "dicc" en el que la primera línea tenga la primera palabra, la segunda la pista, la tercera como la primera... etc.
Código
Modif: Modifico la línea "if (aciertos >= 5) printf ("\nMala suerte, otra vez sera!\n");" en donde el 5 debería ser un 7. Esto me ha ocurrido porque al principio el número de intentos al principio era 5, pero luego decidí establecerlo en 7. Podría solucionarse con un "#define" al principio del programa. Esto podría aplicarse también a "/var/dicc". Modifico el código con todas las mejoras aquí descritas. No he probado las mejoras, pero no deberían dar errores. Un saludo. Título: Re: Duda con ahorcado en C Publicado por: satu en 28 Diciembre 2011, 21:37 pm Hola
Yo también he hecho una versión un poco parecida a la de Sagrini, aunque yo no utilizo lo de las pistas Aquí la teneis Código
Saludos Título: Re: Duda con ahorcado en C Publicado por: folostia en 30 Diciembre 2011, 11:36 am Lo de los dibujitos lo hago de otra forma,como no puedo poner nada de lo que habéis puesto vosotros,pongo:
Código: if (fallos=1) { y así sucesivamente,es un coñazo,pero es lo que puedo hacer de momento. Buff me está costando más de lo que pensaba este juego... >:( Título: Re: Duda con ahorcado en C Publicado por: satu en 30 Diciembre 2011, 16:07 pm Hola
Recuerda que las comparaciones se hacen con == no con = Saludos Título: Re: Duda con ahorcado en C Publicado por: folostia en 30 Diciembre 2011, 16:15 pm Hola sisi eso ya está corregido.Os pongo mi código(lo que llevo hecho) a ver si voy bien encaminado:Recuerda que las comparaciones se hacen con == no con = Saludos Código: /*Juego del ahorcado*/ Título: Re: Duda con ahorcado en C Publicado por: folostia en 30 Diciembre 2011, 16:16 pm aún tengo muchas cosas que corregir y muchas incompletas,pero es lo que llevo hecho y me gustaría saber si voy bien encaminado
|