SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: danielgomezco en Viernes 7 de Noviembre de 2008, 06:00

Título: Menu con comando shitch
Publicado por: danielgomezco en Viernes 7 de Noviembre de 2008, 06:00
bueno se que es una bobada pero llevo luchando como dos dias y no me ha funcionado, nesecito que el menu se repita cada ves que se termine un case o sea que vuelva a pedir una entrada, pero cuando selecciono una opcion este la corre sin problemas pero termina el programa y no vuelve a pedir entrada, que sera?


el codigo lo tengo mas o menos asi


while(menu==0)
 {
Peticion de opcion
switch(menu){
   case 1:codigo
                  menu=0
        break;
       case 2:codigo
                  menu=0
       break;
       default:
       break;
}
}
Título: Re: Menu con comando shitch
Publicado por: m0skit0 en Viernes 7 de Noviembre de 2008, 06:59
Cita de: "danielgomezco"
while(menu==0)
¿Estás seguro de que deseas que se repita mientras sea cero?
Título: Re: Menu con comando shitch
Publicado por: JeoV en Sábado 8 de Noviembre de 2008, 05:21
Citar
bueno se que es una bobada pero llevo luchando como dos dias y no me ha funcionado, nesecito que el menu se repita cada ves que se termine un case o sea que vuelva a pedir una entrada, pero cuando selecciono una opcion este la corre sin problemas pero termina el programa y no vuelve a pedir entrada, que sera?


el codigo lo tengo mas o menos asi


while(menu==0)
{
Peticion de opcion
switch(menu){
case 1:codigo
menu=0
break;
case 2:codigo
menu=0
break;
default:
break;
}
}

supongo que el valor de entrada se lo asignas a menu
entonces si menu es diferente de los case (1 y 2) ejemplo 3 ignoraria todos los casos y se pasaria al default
el cual terminará el ciclo while por el break que tiene como instruccion

entonces lo que estas haciendo en este codigo es terminar con el ciclo while cuando la opcion no esta dentro de los casos del switch.

a lo mejor te habras confundido de que el default tambien lleva break como los cases, pero no lleva(al menos que quieras que termine asi).

si lo que quieres es que te siga pidiendo una entrada entonces quita el break del default y pon algo como menu=0;