Hola a todos... el código siguiente es de un programa es de una calculadora con 4 operaciones básicas en forma de menú y de ahi se selecciona la opción y los manda a realizar la operación. No se si sera posible que me digan como hacer para que después de realizar una operación regrese nuevamente al menú... Y tambien me gustaria que alguno de ustedes me dijera si esta bien asi o necesita alguna mejora ese codigo... El código del programa lo hize yo...
#include <iostream.h>
#include <conio.h>
int main ()
{
int a,b,opcion;
cout<<"Seleccione la operacion a realizar: \n";
cout<<"1 Suma\n";
cout<<"2 Resta\n";
cout<<"3 Multiplicaci\xa2nn\n";
cout<<"4 Divisi\xa2n\n";
cout<<"5 Salir\n";
cin>>opcion;
clrscr();
switch (opcion){
case 1:
cout<<"Ingrese la primera cantidad a sumar: ";
cin>>a;
cout<<"Ingrese la primera cantidad a sumar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 2:
cout<<"Ingrese la primera cantidad a restar: ";
cin>>a;
cout<<"Ingrese la primera cantidad a restar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 3:
cout<<"Ingrese la primera cantidad a Multiplicar: ";
cin>>a;
cout<<"Ingrese la primera cantidad a Multiplicar: ";
cin>>b;
cout<<"El resultado es: "<<(a*b)<<endl;
break;
case 4:
cout<<"Ingrese la cantidad a Dividir: ";
cin>>a;
cout<<"Ingrese la primera cantidad a Dividir: ";
cin>>b;
cout<<"El resultado es: "<<(a/b)<<endl;
break;
case 5:
cout<<"Presione cualquier tecla para Salir ";
break;
default:
cout<<"Solo puede seleccionar una de las opciones de el Menu... : ";
cout<<"Presione cualquier tecla para salir";
break;
}
getch();
return 0;
}
Gracias :)
¡Buenas!
Si el menu tiene una opcion para salir, lo unico que tienes que hacer es repetir el codigo mientras no se indique esa opcion...
¡Saludos!
Cita de: Black Lotus en 10 Febrero 2013, 21:02 PM
... Y tambien me gustaria que alguno de ustedes me dijera si esta bien asi o necesita alguna mejora ese codigo... El código del programa lo hize yo...
Está bastante ben, salvo por "pequeños detelles. como el uso de "#include <iostream.h>, que debe ser "<iostream>" así como el uso de la librería "conio" y sus acólitos" clrscr" y "getch" que no forman parte del estándar de C. Existen otras opciones sí estándar.
Repites primera en donde debería decir segunda y olvidaste incluir "using namespace std;", el declarar a y b como float, por si entras decimales o por siel resultado de la división es decimal (aunque esto se podría solventar con un cast si sigues declarando a y b como int) y ya de paso hago uso de "#include<clocale>" que con "setlocale(LC_ALL, "Spanish");" permite en los cout escribir en español (acentos, ñ, ¿,¡, ..), evitándote los códigos ASCII:
#include <iostream>
#include<clocale>
using namespace std;
int main ()
{
setlocale(LC_ALL, "Spanish");
int opcion;
float a,b;
while (1) {
cout<<"Seleccione la operación a realizar: \n";
cout<<"1 Suma\n";
cout<<"2 Resta\n";
cout<<"3 Multiplicación\n";
cout<<"4 División\n";
cout<<"5 Salir\n";
cin>>opcion;
switch (opcion){
case 1:
cout<<"Ingrese la primera cantidad a sumar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a sumar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 2:
cout<<"Ingrese la primera cantidad a restar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a restar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 3:
cout<<"Ingrese la primera cantidad a Multiplicar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a Multiplicar: ";
cin>>b;
cout<<"El resultado es: "<<(a*b)<<endl;
break;
case 4:
cout<<"Ingrese la cantidad a Dividir: ";
cin>>a;
cout<<"Ingrese la cantidad Dividir: ";
cin>>b;
cout<<"El resultado es: "<<(float)a/b<<endl;
break;
case 5:
return 1;
break;
default:
cout<<"Sólo puede seleccionar una de las opciones de el Menú... : ";
cout<<"Presione cualquier tecla para continuar";
break;
}
}
return 0;
}
Saluditos!.
Otra opción es usar las etiquetas goto (aunque se considera código sucio)
#include <iostream>
#include<clocale>
using namespace std;
int main ()
{
setlocale(LC_ALL, "Spanish");
int opcion;
float a,b;
Menu:
cout<<"Seleccione la operación a realizar: \n";
cout<<"1 Suma\n";
cout<<"2 Resta\n";
cout<<"3 Multiplicación\n";
cout<<"4 División\n";
cout<<"5 Salir\n";
cin>>opcion;
switch (opcion){
case 1:
cout<<"Ingrese la primera cantidad a sumar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a sumar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 2:
cout<<"Ingrese la primera cantidad a restar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a restar: ";
cin>>b;
cout<<"El resultado es: "<<(a+b)<<endl;
break;
case 3:
cout<<"Ingrese la primera cantidad a Multiplicar: ";
cin>>a;
cout<<"Ingrese la segunda cantidad a Multiplicar: ";
cin>>b;
cout<<"El resultado es: "<<(a*b)<<endl;
break;
case 4:
cout<<"Ingrese la cantidad a Dividir: ";
cin>>a;
cout<<"Ingrese la cantidad Dividir: ";
cin>>b;
cout<<"El resultado es: "<<(float)a/b<<endl;
break;
case 5:
return 1;
break;
default:
cout<<"Sólo puede seleccionar una de las opciones de el Menú... : ";
cout<<"Presione cualquier tecla para continuar";
}
goto Menu;
return 0;
}