[ Foro de C++ ]

Ayuda con un pequeño problema - Repetir un menú

28-Oct-2018 23:16
Hector Gomez
3 Respuestas

Hola, al hacer este programa me gustaria saber como puedo hacer para dentro del switch al elegir un modo que sea distinto de 1,2,3 poder hacer que vuelva ha salir el mensaje de arriba que pregunte a que modo quiero jugar y salga la opcion de elegir el 1,2 o salir… gracias.!


#include <iostream>
#include <cstdlib>
#include<ctime>

using namespace std;
int menu();

int main()
{
	int modo;
	modo = menu();
}

int menu()
{
	int modo;

	cout << "Introduce 1 para Modo A: cada jugador estara obligado, cuando le llegue el turno, a robar un numero concreto de cartas." << endl;
	cout << "Introduce 2 para Modo B: cada jugador podra robar el numero de cartas que desee y plantarse si no quiere mas." << endl;
	cout << "Introducir 0 para salir del juego." << endl;
	cout << endl;
	cout << "Introduce el modo al que quieres jugar; 1, 2 o 0: ";
	cin >> modo;


	{



		switch (modo)
		{
		case 1: cout << "Ha elegido el modo A"<<endl; break ;
		case 2: cout << "Ha elegido el modo B"<<endl; break ;
		case 0: exit(0);
		default: cout << "No ha seleccionado ningun modo"<<endl;
			if (modo>=3) {
				cout << "\nVuelva ha elegir otro modo: " << endl;
			}
		}
		
		system("PAUSE");
		
	}



	return 0;
}


 


28-Oct-2018 23:22
Nacho Cabanes (+83)

En main, tendras que llamar al menu de forma repetitiva, por ejemplo con un while.


29-Oct-2018 18:38
Hector Gomez

Hola, me puedes indicar como seria? estoy super perdido... @ Nacho Cabanes


30-Oct-2018 13:41
Nacho Cabanes (+83)

Si en el menú, la opción 0 es la de salir, yo haría:


int modo; 
do
{
    modo = menu(); 
}
while (modo != 0);


 






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)