Código:
#include <iostream>
#include <string>
#include <vector>
#include <fstream>
#include <time.h>
#include <stdlib.h>
using namespace std;
class X
{
protected:
string Po;
string Pm;
int Vidas;
public:
void mostrar();
void ingresar(char x);
void inicializar();
string pa();
};
void X::mostrar()
{
cout<<"Instrucciones:"<<endl
<<"1.-Asegurese de que su teclado no tenga activiada la funcion 'MAYUSCULAS'"<<endl
<<"2.-Adivine letra por letra o en conjunto pero sera tomado Letra*Error"<<endl
<<"3-.Diviertanse!"<<endl<<endl;
cout<<Pm<<endl;
while(Vidas>0 &&Pm!=Po)
{
char x;
cin>>x;
system("cls");
ingresar(x);
mostrar();
}
if(Vidas>0)cout<<"Ganaste! :D"<<endl;
else cout<<"Perdiste, la palabra a adivinar era: "<<Po<<endl;
}
void X::inicializar()
{
Vidas=5;
Po=pa();
for(int i=0;i<Po.length();i++)
{
//if(po[i]= tolower(po[i]));
if(Po[i]>='A'&&Po[i]<='Z')
{
Po[i]+=32;
}
}
for(int i=0; i<Po.length();i++)
{
if(Po[i]>='a'&&Po[i]<='z')
{
Pm+='_';
}else
{
Pm+=Po[i];
}
}
}
void X::ingresar(char x)
{
bool perdidavidas=true;
for(int i=0 ; i<Po.length();i++)
{
if(x==Po[i])
{
perdidavidas=false;
Pm[i]=x;
}
}
if(perdidavidas)Vidas--;
}
vector <string>colpa()
{
vector<string>palabras;
ifstream file("prueba.txt");
string palabra;
while(file>>palabra)
palabras.push_back(palabra);
file.close();
return palabras;
}
int NAM(int b)
{
srand(time(0));
int na=rand();
return na % b;
}
string X::pa()
{
vector<string>palabras=colpa();
int na=NAM(palabras.size());
return palabras[na];
}
/****************************************FIN CLASE*****************************************************/
int main ()
{
X a;
a.inicializar();
a.mostrar();
system("Pause");
return 0;
}