Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: flony en 19 Agosto 2013, 19:48 pm



Título: ahorcado
Publicado por: flony en 19 Agosto 2013, 19:48 pm
hace bastante que no le entraba a c++, bueno y era un tema pendiente el juego del ahorcado...esta hecho para windows...capaz ahí se podría mejorar un poco para mejorar...bue allí el código así me dan propuestas para mejorarlo
Código:
#include<iostream>
#include<string>
#include<Windows.h>

using  namespace std;

int main ()
{
string palabra;
string solucion;
int i=0, intentos=0;
signed int tamano;
char a;
cout<<"ingrese la palabra "<<endl;
getline(cin, palabra);
//inicio de juego
system("cls");
cout<<"como ayuda la palabra tiene "<<palabra.size()<<" letras"<<endl;
tamano=palabra.size();
//llenar de asteriscos la solucion

for (int i = 0; i <= tamano-1; i++)
{
solucion+='+';
}
cout<<solucion<<endl;
//comprobacion
cout<<"el numero de intentos debe ser superior al numero de letras"<<endl;
cout<<"ingrese los intentos"<<endl;
cin>>intentos;
system("cls");
//inicio

while (intentos>=0)
{
cout<<"ingrese la letra: "<<endl;
    cin>>a;
for (int i = 0; i <= tamano-1; i++)
{
if (palabra[i]==a)
{
solucion[i]=a;
}
}
cout<<"hasta ahora la palabra es "<<solucion<<endl;
intentos--;
cout<<"los intentos hasta ahora es "<<intentos;
Sleep(3000);
system("cls");
if (palabra==solucion)
{
cout<<"FELICIDADES GANASTE :) :) "<<solucion<<endl;
};
if (intentos==1)
{
cout<<"solo te queda un intento"<<endl;
};
}

system("PAUSE");
return  0;
}


Título: Re: ahorcado
Publicado por: eferion en 19 Agosto 2013, 21:08 pm
Código
  1. for (int i = 0; i <= tamano-1; i++)
  2. {
  3. solucion+='+';
  4. }

Mi propuesta:

Código
  1. string solucion( tamano, '+' );

Además estaría bien que las palabras las cogiese de un archivo y eligiese una al azar.

Quizás también en vez de indicar el número de intentos se puede establecer un número de fallos concreto ( 5 por ejemplo ) y al llegar a 5 fallos el juego termina automáticamente y muestra la palabra buscada.