Advertisement
Miketo_prog

Untitled

Nov 29th, 2022
1,217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.28 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. #define TAM 20
  4. char palabra[20];
  5. int letrasAcertadas[20];
  6.  
  7.  
  8.  
  9. void leerPalabra() {
  10.     printf("  palabra a adivinar: ");
  11.     scanf("%s", &palabra);
  12. }
  13.  
  14. void llenarArregloDeCeros() {
  15.     for(int i=0; i<TAM; i++)
  16.         letrasAcertadas[i] = 0;
  17. }
  18.  
  19. int contarLetrasPalabra() {
  20.     int tam = 0;
  21.  
  22.     for (int i=0; palabra[i]!='\0'; i++)
  23.         tam++;
  24.  
  25.     return tam;
  26. }
  27.  
  28. //imprime la palabra comprobando si existe un 1, en caso de existir un 1 quiere decir que esa letra fue descubierta
  29. void printPalabra(int tamanio) {
  30.     for(int i=0; i<tamanio; i++){
  31.         if(letrasAcertadas[i]==1)
  32.             printf("%c", palabra[i]);
  33.         else
  34.             printf("-");
  35.     }
  36.  
  37.     printf("\n");
  38. }
  39.  
  40. int buscarSiLetraEstaEnPalabra(char letra, int tamanio) {
  41.     int existe = 0;
  42.  
  43.     for(int i=0; i<tamanio; i++){
  44.         if(letra==palabra[i]){
  45.             letrasAcertadas[i] = 1; //si la letra existe en palabra[] entonces guasrdamos un 1
  46.             existe = 1;
  47.         }
  48.     }
  49.  
  50.     return existe;
  51. }
  52.  
  53. int palabraEncontrada(int tamanio) {
  54.     int encontrada = 1;
  55.  
  56.     for(int i=0; i<tamanio; i++){
  57.         if(letrasAcertadas[i]==0){
  58.             encontrada = 0;
  59.             break;
  60.         }
  61.     }
  62.  
  63.     return encontrada;
  64. }
  65.  
  66.  
  67.  
  68.  
  69. int main()
  70. {
  71.     int tamanioPalabra;
  72.  
  73.     int vidas = 5;
  74.     char ganador = "n";
  75.  
  76.     llenarArregloDeCeros();
  77.  
  78.     printf("BIENVENIDO AL JUEDO DEL AHORCADO\n\n");
  79.     leerPalabra();
  80.     fflush(stdin);
  81.     tamanioPalabra = contarLetrasPalabra();
  82.  
  83.  
  84.     do{
  85.         int letraEncontrada;
  86.         char letra = '.';
  87.         system("cls");
  88.         printf("JUEDO DEL AHORCADO\n\n");
  89.         printf("CUENTAS CON %d VIDAS\n\n", vidas);
  90.         //buscarSiLetraEstaEnPalabra(letra, tamanioPalabra);
  91.         printPalabra(tamanioPalabra);
  92.         printf("\nQue letra eliges? -> ");
  93.         scanf("%c", &letra);
  94.         fflush(stdin);
  95.         letraEncontrada = buscarSiLetraEstaEnPalabra(letra, tamanioPalabra);
  96.  
  97.         if(letraEncontrada==0)
  98.             vidas--;
  99.  
  100.         if(vidas>0 && palabraEncontrada(tamanioPalabra)==1){
  101.             ganador = 's';
  102.             break;
  103.         }
  104.     }while(vidas>0);
  105.  
  106.     if(ganador=='s')
  107.         printf("FELICIDADES");
  108.     else
  109.         printf("PERDISTE");
  110.  
  111.     return 0;
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement