Ver Mensaje Individual
  #3 (permalink)  
Antiguo 26/04/2014, 13:49
locario
 
Fecha de Ingreso: abril-2014
Mensajes: 4
Antigüedad: 10 años
Puntos: 0
Respuesta: Deseo que cuando pulse enter a secas se finalice el programa

Que tal, gracias por la respuesta

He compilado tu código en un nuevo proyecto y funciona a la perfección, pero adaptando el código al mío el programa se cierra automáticamente, es como si estuviese pillando un vacio anteriormente o algo de eso, la cuestión es que no se como arreglarlo.

También al ser ahora la variable "mas" un string y no un char como antes estoy teniedo problemas a la hora de decirle que si es una s minúscula o mayúscula ejecute el bucle de nuevo.

Te pego el nuevo código, gracias y un saludo.

Código c++:
Ver original
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7. int main()
  8. {
  9.  
  10.     string mas;
  11.  
  12.     do {
  13.  
  14.     srand( time(NULL) );
  15.  
  16.     const char *ordenador[3] = { "piedra", "papel", "tijera" };
  17.     int s = rand() % 3;
  18.  
  19.     enum resultado_t { PIEDRA, PAPEL, TIJERA };
  20.  
  21.     cout << "Eleccion de la maquina: " << ordenador[s] << endl;
  22.  
  23.     int eleccion;
  24.  
  25.     cout << "Introduce n. jugada (1 = piedra, 2 = papel, 3 = tijera): ";
  26.     cin >> eleccion;
  27.     cout << endl;
  28.  
  29.     --eleccion;
  30.  
  31.     if(eleccion == s)
  32.     {
  33.         cout << "Empate!" << endl;
  34.     }
  35.  
  36.     else if(eleccion == PIEDRA)
  37.     {
  38.         if(s == PAPEL)
  39.             cout << "Perdistes!" << endl;
  40.         else
  41.             cout << "Ganastes!" << endl;
  42.     }
  43.     else if(eleccion == PAPEL)
  44.         if(s == PIEDRA)
  45.             cout << "Ganastes!!" << endl;
  46.         else
  47.             cout << "Perdistes!!" << endl;
  48.     else
  49.         if(s == PIEDRA)
  50.             cout << "Perdistes!!!" << endl;
  51.         else
  52.             cout << "Ganastes!!!" << endl;
  53.  
  54.     cout << "¿Quieres jugar otra vez? (presiona s/S y enter si quieres seguir jugando o simplemente presiona enter si quiere salir) " << endl;
  55.     getline (cin, mas);
  56.  
  57.     if(mas=="s" || mas=="S")
  58.         continue;
  59.  
  60.     if(mas.empty())
  61.         break;
  62.  
  63.     } while(true);
  64.  
  65.     return 0;
  66. }