Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Nic88_bhba

#1
Hola tengo un problema con un juego del ahorcado que saque de un libro llamado
Beggining C++ que enseña programacion de juegos. El problema es que no me reconoce mas de una letra correcta ademas de la primera. No se en que le estoy errando por que esta igual que en el libro. Saludos.


#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <ctime>
#include <cctype>


using namespace std;

int main(int argc, char *argv[]) {
   
   const int res_incorrectas = 8;
   
   vector<string> palabras;
   
   palabras.push_back("Adivina");
   
   palabras.push_back("Ahorcado");
   
   palabras.push_back("Dificultad");
   
   srand(time(0));
   
   random_shuffle(palabras.begin() , palabras.end());
   
   const string la_palabra = palabras[0];
   
   int error = 0;

   string hasta_ahora(la_palabra.size(), '-');
   
   string usada = "";
   
   cout << "\nBienvenido a Ahorcado V1.0\n";
   
   while ((error < res_incorrectas) && (hasta_ahora != la_palabra))
      
   {
      
      cout << "\nTienes " << (res_incorrectas - error) << " oportunidades para acertar.\n";
      
      cout << "\nHas usado las siguientes letras " << usada << "\n";
      
      cout << "\nHasta ahora la palabra es: " << hasta_ahora << "\n";
      
      
      char respuesta;
      
      cout << "\n\nIngresa una letra: ";
      
      cin >> respuesta;
      
      respuesta = toupper(respuesta);
      
      while (usada.find(respuesta) != string::npos)
         
      {
         
         cout << "\nYa has ingresado: " << respuesta << "\n";
         
         cout << "\nIngresa tu respuesta: \n";
         
         cin >> respuesta,
            
         respuesta = toupper(respuesta);
         
         
      }
      
      usada+= respuesta;
      
      if (la_palabra.find(respuesta) != string::npos)
         
      {
         cout << "\nMuy bien! " << respuesta << " esta en la palabra.\n";
         
         for (int i=0 ; i < la_palabra.length(); ++i)
         
         if (la_palabra == respuesta)
         
         {   
            
            hasta_ahora = respuesta;
         
         }
      }
      
      else
      
      {
         cout << "\nPerdon, " << hasta_ahora << " no es la palabra.\n";
      
          ++error;
         
      }
      
      
      
   }   
   
   
   if (error == res_incorrectas)
      
    {
      
      cout << "\nHas sido colgado!\n";
      
      cout << "\nLa palabra es: " << la_palabra;
      
    }
   
   else
      
      {   
         cout << "\nAcertaste!!!\n";
         
         cout << "\nLa palabra es: " << la_palabra;
      }
   
   
   return 0;
#2
Hola rir3760 te agradezco mucho que te tomes el tiempo de contestarme. Veo que tengo varios errores :o mas alla de no poder resolver el tema. Me parecio muy clara tu respuesta. Saludos.   ;D




Hola rir3760 quisiera saber si podrias resolverme una duda mas sobre este programa. La idea es crear una lista de palabras para el juego del ahorcado lo cual ya pude hacer y tome la parte de programacion del juego de unos tutoriales de youtube , ahora me interesaria poner las palabras en la lista seguida de la categoria a la que corresponden. Por ejemplo : en la lista tendriamos "argentina" y al lado la categoria a la que corresponde que en este caso seria "paises". Te agradezco nuevamente por haberme ayudado y espero no ser molestia. Saludos.
#3
Programación C/C++ / Manejo de Archivoc en C++
27 Octubre 2014, 22:17 PM
Hola necesito crear un programa en el cual ingrese datos en un archivo y despues los extraiga y seleccione uno de esos datos al azar. Hasta el momento pude crear el archivo y ingresar datos y tambien extraerlos pero no se como continuar. Agradeceria que me dieran una mano. Les dejo lo hecho hasta ahora.

#include <iostream>
#include <cstdlib>
#include <fstream>
#include <conio2.h>
#include <string.h>

using namespace std;

int main(int argc, char *argv[]) {
   
   int i = 0;
   
   ofstream entrada;
   
   entrada.open("texto2.txt" , ios::out | ios::app);
   
   if (entrada.fail())
      
   {
      
      cout<<"El archivo no se creo correctamente"<<endl;
      
      getch();
      
   } else
      
      {
         
         char palabra[20];
         
         strcpy (palabra,"argentina");
      
         entrada<<palabra<<endl;
         
         entrada.close();
         
         cout<<"Los datos fueron almacenados correctamente\n"<<endl;
         
         getch();
         
      }
   
   ifstream salida;
   
   salida.open ("texto2.txt" , ios::in);
   
   if (salida.fail())
      
   {
      
      cout<<"El archivo no pudo ser abierto o no existe"<<endl;
      
      getch();
      
   } else
      
      {
         string palabra;
         
         getline(salida,palabra);
         
         
         
         while (!salida.eof())
            
         {   
   
            
            getline(salida,palabra);
            
            cout<<palabra<<endl;
            
            i++;
            
            
         }
         
         
         
      }
   
   salida.close();
   
   getch();
   
   
   return 0;
}