Código
#include <stdlib.h> #include <iostream> #include "conio.h" #include <time.h> #include<stdio.h> #include<string.h> using namespace std; int main() { int res=1,oportunidades=5,ni=1,tpuntaje=0; do{ char rep[100],temporal[100]; char pal; char *palabra[]={"ambiente","cuidado","ecosistema","naturaleza","conservacion","recursos","equilibrio","forestacion","purifica","tierra","vida","ecologico","animales","ambiental","reciclaje","atmosfera","diversidad","energia"}; char *frase; int tacertado=0,nivel=1; srand(time(NULL)); int longitud,i,j,inicial,acertado=0,temp=0,n=1; int repetido=0,gano=0, nrepetidos=0; cout<<"JUEGO DEL AHORCADO"<<endl; /*printf("Introduzca la palabra a adivinar: "); gets(frase);*/ //while(oportunidades != 0) //{ oportunidades=5; acertado=0; repetido=0; nrepetidos=0; frase=0; for(int v=0;v<=1;v++) { frase=palabra[rand()%18]; //Guarda un palabra al azar de las 18 existentes } system("cls"); longitud = 0; inicial = 0; j = 0; rep[0] = ' '; rep[1] = '\0'; do { system("cls"); cout<<"JUEGO DEL AHORCADO"<<endl; cout<<endl; temp=0; if(inicial == 0) { for(i=0;i<strlen(frase);i++) { if(frase[i] == ' ') { temporal[i] = ' '; longitud++; } else { temporal[i] = '_'; longitud++; } } } inicial = 1; temporal[longitud] = '\0'; ///////ojo /*for(i=0;i<strlen(rep);i++) { if(rep[i] == pal) { repetido = 1; break; } else { repetido = 0; } }*/ if(repetido == 0) { for(i=0;i<strlen(frase);i++) { if(frase[i] == pal) { temporal[i] = pal; acertado++; temp=1; } } } if(repetido == 0 && j>0) { if(temp == 0) { oportunidades = oportunidades - 1; } } /* else { printf("Ya se ha introducido este caracter"); printf("\n\n"); }*/ printf("\n"); for(i=0;i<strlen(temporal);i++) { printf(" %c ",temporal[i]); } printf("\n"); if(strcmp(frase,temporal) == 0) { gano = 1; break; } printf("\n"); cout<<"Nivel: "<<ni<<endl; printf("\n"); printf("Letras Acertadas: %d",acertado); printf("\n"); printf("Oportunidades Restantes: %d",oportunidades); printf("\n"); rep[j] = pal; j++; if (oportunidades==0) { break; } printf("Introduzca una letra:"); scanf("\n%c",&pal); for(i=0;i<j;i++) { if(rep[i] == pal) { repetido = 1; cout<<"Ya se ha introducido este caracter"<<endl; system ("pause"); break; } else { repetido = 0; } } }while(oportunidades != 0); if(gano) { printf("\n\n"); printf("Enhorabuena, has ganado."); printf("\n\n"); printf("Deseas continuar: 1 = si, 2 = no :\n"); scanf("%i",&res); if(res==1) { ni++; tpuntaje+=acertado; } } else { printf("\n\n"); printf("Has perdido."); cout<<"La palabra era "<<frase<<endl; cout<<"Puntaje total "<<tpuntaje<<endl; cout<<"Nivel maximo:"<<ni-1<<endl; printf("Deseas continuar jugando?: 1 = si, 2 = no :\n"); scanf("%i",&res); if(res==1) { ni=1; tpuntaje=0; } } }while (res!=2); system("PAUSE"); return 0; }