Ir para o conteúdo
andronikus

[C++] Ajuda: O menu entra em ciclo infinito (Resolvido)

Mensagens Recomendadas

andronikus    0
andronikus

Boas...

Gostava que me ajudassem aqui numa duvida....

Tenho  seguinte menu implementado:

do{

	espera=MENU();

		if((espera < 0 || espera>3))
			cout<< "Insira uma opcao entre 0 e 3"<<endl << endl;


		switch(espera) {
			case 1: rede.Print_Rede(); break;
			case 2: cout<<"No de origem: ";cin >> no_origem;
					cout<<"No de destino: ";cin >> no_destino;
					rede.PRINT_path(rede.descobre_nodo(no_origem),rede.descobre_nodo(no_destino),0);
					break;
			case 3: cout<<"No de origem: ";cin >> no_origem;
					cout<<"No de destino: ";cin >> no_destino;
					rede.PRINT_path(rede.descobre_nodo(no_origem),rede.descobre_nodo(no_destino),1);
					break;
		}

}while(espera !=0);	

O que acontece aqui é que quando introduzo um caratcter, por exemplo 'a' em vez de me ser solicitado de novo a introdução de uma opção o menu entra em cilo infinito, i.e., está sempre é mostrado continuamente.

O que queria era que quando é introduzido um caracter diferente de 0,1,2,3 o programa voltasse a pedir a inserção de uma nova opção

Cumps

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Hipnoted    6
Hipnoted

Tens de meter o menu de opções dentro do ciclo do...while.

Aqui no fórum há muitos exemplos de menus, da uma olhada pela secção de C++ e até de C. ;)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade