jeje desde q vi este post me puse a programar un ahorcado yo tb y lo q mas me costo fue conseguir una manera de ir mostrando las letras adivinadas de la palabra cuando el usuario las decia jeje resulto ser muy facil aqui mi codigo.. se podria mejorar en cuanto a detalles pero creo que en lo que al ahorcado se refiere pues hace lo que se quiere
#include <iostream>
#include <fstream>
#include <stdio.h>
#include <string>
using namespace std;
int main()
{
//----Sacar la palabra del archivo.
ifstream archivo("palabra.txt");
string palabra;
string aux;
archivo >> palabra;
aux = palabra;
char letra;
int turnos = 5;
int encuentro = 0;
for(int i=0; i<palabra.size(); i++)
aux[i] = '_';
//Bucle para controlar la busqueda de letras.
cout << "\n\t*****AHORCADO*****" << endl;
cout << "Tiene " << turnos << " para adivinar la palabra." << endl << endl;
do{
encuentro = 0;
cout << "\t\n\nDiga una letra: ";
cin >> letra;
for(int i=0; i<palabra.size(); i++)
{
if(palabra[i] == letra)
{
aux[i] = letra;
encuentro++;
}
}
if(encuentro == 0)//No encontro almenos 1 vez la letra
{
turnos--;
cout << "\n\tFallaste!!! turnos: " << turnos << endl << endl;
}
for(int i=0; i<aux.size(); i++)
cout << aux[i] << " ";
if(aux == palabra)
{
cout << "\n\n\t***CORRECTO GANO!!!!***" << endl << endl;
break;
}
}while(turnos > 0);
archivo.close();
return 0;
}