Nuevas NORMAS para el foro

Curso Hacker
Bienvenido(a), Visitante. Favor de ingresar o registrarse.
¿Perdiste tu email de activación? - Julio 09, 2008, 06:47:42
Boton Buscar
Inicio Ayuda Ingresar Registrarse
Visita: Articulos - Juegos Gratis - Da Foros

Comunidad Underground Hispana  |  Programacion  |  Programación  |  Carbide C/C#/C++  |  Tema: menu en case 0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: menu en case  (Leído 428 veces)
celtac
Miembro
*****
Desconectado Desconectado

Mensajes: 85



Ver Perfil Email
« en: Junio 22, 2006, 01:37:19 »

En línea
Alt369
Recien Llegado
*
Desconectado Desconectado

Mensajes: 4


Ver Perfil
« Respuesta #1 en: Junio 22, 2006, 06:07:55 »

pues mira, con un do...while, a qui te dejo el codigo que hice algu tiempo (no entero), por si no lo entiendes, lo pongo en iostream eh, dew!!

do{


    cout << "1. sumar " << endl;
    cout << "2. restar " << endl;
    cout << "3. dividir " << endl;
    cout << "4. multiplicar" << endl;
    cout << "5. salir" << endl;
    cout << "\nintdoduzca que quiere hacer: ";
    cin >> d;

    switch(d)

{

case 1:



    system("cls");
    cout << "introduzca el primer numero a sumar: ";
    cin >> a;
    cout << "introduzca el segundo numero: ";
    cin >> b;
    c = a + b;
    system("cls");
    cout << a << " + " << b << " = " << c << endl;
    cout << "\n\n pulsa cualquier tecla para volver a menu" << endl;
    system("pause > nul");
    system("cls");
    break;


case 2:


    system("cls");
    cout << "introduzca el primer numero a restar: ";
    cin >> a;
    cout << "introduzca el segundo numero: ";
    cin >> b;
    c = a - b;
    system("cls");
    cout << a << " - " << b << " = " << c << endl;
    cout << "\n\n Pulsa cualquier tecla para volver a menu" << endl;
    system("pause > nul");
    system("cls");
    break;


case 3:


    system("cls");
    cout << "introduzca el dividendo: ";
    cin >> a;
    cout << "introduzca el divisor: ";
    cin >> b;
    c = a / b;
    f = a % b;
    system("cls");
    cout << a << " dividido entre " << b << " = " << c << endl;
    cout << "Residuo: " << f << endl;
    cout << "\n\n Pulsa cualquier tecla para volver a menu";
    system("pause > nul");
    system("cls");
    break;


case 4:


    system("cls");
    cout << "introduzca el primer numero a multiplicar: ";
    cin >> a;
    cout << "\nintroduzca el segundo numero de la multiplicacion: ";
    cin >> b;
    c = a * b;
    system("cls");
    cout << a << " multiplicado por " << b << " = " << c << endl;
    cout << "\n\n Pulsa cualquier tecla para volver a menu";
    system("pause > nul");
    system("cls");
    break;


case 5:


    goto salir;
    default:
    system("cls");
    cout << "has introducido un numero erroneo" << endl;
    cout << "\n Pulsa cualquier tecla para volver a menu" << endl;
    system("pause > nul");
    system("cls");
    break;

}


}while (1);
salir:
system("exit");
return 0;
}
En línea
celtac
Miembro
*****
Desconectado Desconectado

Mensajes: 85



Ver Perfil Email
« Respuesta #2 en: Junio 24, 2006, 01:23:26 »

ok, gracias ahora me devuelve al menu, solo me falta una opcion que me pregunte desea salir S/N. para que el usuario se retire del programa
En línea
Biocode
Habitual
*****
Desconectado Desconectado

Mensajes: 364



Ver Perfil
« Respuesta #3 en: Junio 24, 2006, 09:53:55 »

En línea
J@Ker Lo10
Habitual
*****
Desconectado Desconectado

Mensajes: 200


'LA PRimeR @ VivE' J @Ker LOlo

???? ???? ????
Ver Perfil
« Respuesta #4 en: Junio 24, 2006, 04:50:59 »

algo mas simple.. para el novato:

int op;
cout<<"\nMENU";
cout<<"\n1.-Opcion 1";
cout<<"\n2.-Opcion 2";

cout<<"\n\n3.-Salir";
do{
     clrscr();
    switch(op){
     case 1: cout<<"\nPulso 1"; break;
     case 2: cout<<"\nPulso 2";break;
     case 3: cout<<"\nPulso 3";break; exit(0);
     default: cout<<"\nOpcion no valida";
   }
}while(op!=3);


senciilo no....
En línea

El ConoCIMIenTo no lleGA poR si solo,
soLO kE el MEdio pARA oBteNERlo es ..........
celtac
Miembro
*****
Desconectado Desconectado

Mensajes: 85



Ver Perfil Email
« Respuesta #5 en: Junio 25, 2006, 04:24:14 »

En línea
elpolilla
Miembro
*****
Desconectado Desconectado

Mensajes: 102



Ver Perfil
« Respuesta #6 en: Junio 27, 2006, 02:23:48 »

En línea


J@Ker Lo10
Habitual
*****
Desconectado Desconectado

Mensajes: 200


'LA PRimeR @ VivE' J @Ker LOlo

???? ???? ????
Ver Perfil
« Respuesta #7 en: Junio 28, 2006, 07:56:08 »

es que estas llamando a getch();
y cuando presiones salir..
saldra hasta que presiones otra tecla..
pruebalo....

En línea

El ConoCIMIenTo no lleGA poR si solo,
soLO kE el MEdio pARA oBteNERlo es ..........
elpolilla
Miembro
*****
Desconectado Desconectado

Mensajes: 102



Ver Perfil
« Respuesta #8 en: Junio 29, 2006, 10:18:41 »

En línea


sowher
Habitual
*****
Desconectado Desconectado

Mensajes: 184


[ NuKE ]


Ver Perfil
« Respuesta #9 en: Junio 29, 2006, 01:38:47 »

En línea
J@Ker Lo10
Habitual
*****
Desconectado Desconectado

Mensajes: 200


'LA PRimeR @ VivE' J @Ker LOlo

???? ???? ????
Ver Perfil
« Respuesta #10 en: Junio 29, 2006, 11:06:26 »

//cierto ok ok..
//deberia ser asi

int op;
do{
     clrscr();
    cout<<"\nMENU";
    cout<<"\n1.-Opcion 1";
    cout<<"\n2.-Opcion 2";
    cout<<"\n\n3.-Salir";
               op=getch();

    switch(op){
     case 1: cout<<"\nPulso 1"; break;
     case 2: cout<<"\nPulso 2";break;
     case 3: cout<<"\nPulso 3";break;
     default: cout<<"\nOpcion no valida";
   }
}while(op!=3);


senciilo no....
 
En línea

El ConoCIMIenTo no lleGA poR si solo,
soLO kE el MEdio pARA oBteNERlo es ..........
J@Ker Lo10
Habitual
*****
Desconectado Desconectado

Mensajes: 200


'LA PRimeR @ VivE' J @Ker LOlo

???? ???? ????
Ver Perfil
« Respuesta #11 en: Junio 29, 2006, 11:12:18 »

el exit(0) lo habia puesto..
por si en lugar de el getch(), ocupaba cin>>

entonces si pasaria lo que hos dije...
En línea

El ConoCIMIenTo no lleGA poR si solo,
soLO kE el MEdio pARA oBteNERlo es ..........
sowher
Habitual
*****
Desconectado Desconectado

Mensajes: 184


[ NuKE ]


Ver Perfil
« Respuesta #12 en: Junio 30, 2006, 08:59:17 »

Bueno si quiere colocarle un exit, solo tendrias q agregarle un menu de salida...

int op;
do{
     clrscr();
    cout<<"\nMENU";
    cout<<"\n1.-Opcion 1";
    cout<<"\n2.-Opcion 2";
    cout<<"\n\n3.-Salir";
               op=getch();

    switch(op){
     case 1: cout<<"\nPulso 1"; break;
     case 2: cout<<"\nPulso 2";break;
     case 3: cout<<"\nPulso 3";break;
     case 4: cout<<"\nPulso 4";exit();
     default: cout<<"\nOpcion no valida";
   }
}while(op!=3);
En línea
ElChipocludo
Recien Llegado
*
Desconectado Desconectado

Mensajes: 4


Ver Perfil
« Respuesta #13 en: Junio 30, 2006, 02:54:49 »

Leve pero importante correccion:
int op;
do{
     clrscr();
    cout<<"\nMENU";
    cout<<"\n1.-Opcion 1";
    cout<<"\n2.-Opcion 2";
    cout<<"\n\n3.-Salir";
               op=getch();

    switch(op){
     case '1': cout<<"\nPulso 1";break;
     case '2': cout<<"\nPulso 2";break;
     case '3': cout<<"\nPulso 3";break;
     default: cout<<"\nOpcion no valida";
   }
}while(op!='3');

Estamos capturando caracteres no numeros.

Saludos  Wink
En línea
J@Ker Lo10
Habitual
*****
Desconectado Desconectado

Mensajes: 200


'LA PRimeR @ VivE' J @Ker LOlo

???? ???? ????
Ver Perfil
« Respuesta #14 en: Julio 08, 2006, 01:13:23 »

estas mal....
estamos trabajando con enteros...
int op;

asi ke
case 1: break; //es valido

/****************/
asi es para caracteres lleva apostrofes...
pero estamos trabajando con enteros....


y tambien seria valido asi..

int op;

case 'A' : break;
En línea

El ConoCIMIenTo no lleGA poR si solo,
soLO kE el MEdio pARA oBteNERlo es ..........
ElChipocludo
Recien Llegado
*
Desconectado Desconectado

Mensajes: 4


Ver Perfil
« Respuesta #15 en: Julio 08, 2006, 02:04:23 »

estas mal, aunq estes trabajando con enteros el getch() no te captura el valor de la tecla q apretas sino su valor ascii, por lo tanto si utilizas la funcion getch() estas utilizando caracteres
En línea
Páginas: [1] Ir Arriba Imprimir 
Comunidad Underground Hispana  |  Programacion  |  Programación  |  Carbide C/C#/C++  |  Tema: menu en case « anterior próximo »
Ir a:  


Ranking-Hits
Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC