Autor
|
Tema: Duda con una calculadora C++ (Leído 1,872 veces)
|
Black Lotus
Desconectado
Mensajes: 26
|
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
|
|
|
En línea
|
|
|
|
do-while
Desconectado
Mensajes: 1.276
¿Habra que sacarla de paseo?
|
¡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!
|
|
|
En línea
|
- Doctor, confundo los números y los colores. - Vaya marrón. - ¿Marrón? ¡Por el culo te la hinco!
|
|
|
leosansan
Desconectado
Mensajes: 1.314
|
... 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!.
|
|
|
En línea
|
|
|
|
amchacon
Desconectado
Mensajes: 1.211
|
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; }
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Duda de Avi a Cvcd y calculadora de bitrate
Multimedia
|
tatini
|
2
|
2,170
|
4 Junio 2005, 15:13 pm
por tatini
|
|
|
Calculadora-Duda
Programación Visual Basic
|
h0oke
|
8
|
3,066
|
17 Julio 2009, 03:13 am
por h0oke
|
|
|
Duda pascal calculadora
Programación General
|
netca
|
1
|
4,529
|
12 Abril 2011, 02:20 am
por Nakp
|
|
|
Duda con Calculadora Casio
Dudas Generales
|
vilcar
|
0
|
2,485
|
10 Enero 2012, 19:13 pm
por vilcar
|
|
|
Duda Calculadora (python)
Scripting
|
Tuplado
|
4
|
3,496
|
20 Enero 2012, 13:15 pm
por fallout20xx
|
|