Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Problemas con código calculadora c++

Estas en el tema de Problemas con código calculadora c++ en el foro de C/C++ en Foros del Web. Veran tengo que hacer una calculadora que coja dos o más numeros y los sume, reste, multiplique o divida, de izquierda a derecha, sean cuales ...
  #1 (permalink)  
Antiguo 25/11/2011, 23:50
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Pregunta Problemas con código calculadora c++

Veran tengo que hacer una calculadora que coja dos o más numeros y los sume, reste, multiplique o divida, de izquierda a derecha, sean cuales sean los operandos introducidos, había pensado en hacerlo con un bucle while pero no estoy muy seguro de como hacerlo:

#include <iostream>
using namespace std;

int main ()
{
double Op1;
double Op2;
double extra;
double resultado;
double sign;
cout << "Introduce una operación: ";
cin Op1 >> sign >> Op2;


if ( sign == + ) Op1+Op2;
else ( sign == - ) Op1-op2;
else ( sign == * ) Op1*Op2;
else ( sign == / ) Op1/Op2;

while ()

la VERDAD, no se como hacerlo exactamente y lo necesito, si me podéis ayudar os lo agradecería mucho, porque no se como hacer para que la condición se poner un signo, y estoy aquí a las 6 y pico de la mañana comiéndome la cabeza XDDD

PD: también tengo dudas en que hacer en el bucle en si, es decir, como poner para sumar el primer resultado con el siguiente numero introducido por el usuario y así indefinidamente

Última edición por hascrishas; 26/11/2011 a las 00:25
  #2 (permalink)  
Antiguo 26/11/2011, 00:36
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problemas con código calculadora c++

int main ()
{
double Op1;
double Op2;
double extra;
double resultado;
double sign;
cout << "Introduce una operación: ";
cin Op1 >> sign >> Op2;

if ( sign == + ) Op1+Op2;
else ( sign == - ) Op1-op2;
else ( sign == * ) Op1*Op2;
else ( sign == / ) Op1/Op2;

resultado= Op1 sign Op2

while ( cin >> sign )
{ cin >> sign;
cin >> extra;

if ( sign == + ) resultado+extra;
else ( sign == - ) resultado-extra;
else ( sign == * ) resultado*extra;
else ( sign == / ) resultado/extra;
}
reslutado =

había pensado algo así, pero entonces al repetir el bucle, tomaría otra vez el primer resultado dando como error la operación...

aunque también podría ser esto:

#include <iostream>
using namespace std;

int main ()
{
double Op1;
double Op2;
double resultado;
double sign;
cout << "Introduce una operación: ";
cin Op1 >> sign >> Op2;

if ( sign == + ) Op1+Op2;
else ( sign == - ) Op1-op2;
else ( sign == * ) Op1*Op2;
else ( sign == / ) Op1/Op2;


while ( cin >> sign )
{ resultado = Op1 sign Op2
cin >> sign;
cin >> Op1;
cin >> Op2;

if ( sign == + ) Op1+Op2;
else ( sign == - ) Op1-Op2;
else ( sign == * ) Op1*Op2;
else ( sign == / ) Op1/Op2;
}
reslutado = Op1 sign Op2

cout << "El resultado es: " << resultado << endl;

return 0;

Última edición por hascrishas; 26/11/2011 a las 00:54
  #3 (permalink)  
Antiguo 27/11/2011, 01:10
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Problemas con código calculadora c++

Mira haber si te sirve este codigo =)

Código C++:
Ver original
  1. #include <iostream>
  2. #include <Windows.h>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8.     double numero1;
  9.     double numero2;
  10.     char operacion;
  11.     int conversorOperacion;
  12.     double resultado;
  13.     string respuesta;
  14.     string operador;
  15.    
  16.     while(respuesta!="n" && respuesta!="N")
  17.     {  cout<<"**************Calculadora***********"<<endl;
  18.        cout<<"Ingrese los numeros a procesar matematicamente(ejemplo 1+2):"<<endl;
  19.        cin>>numero1>>operacion>>numero2;
  20.        cout<<endl;
  21.        conversorOperacion=static_cast<int>(operacion);
  22.    
  23.        if(conversorOperacion==43)
  24.         {
  25.             resultado=numero1+numero2;
  26.             operador="suma";
  27.         }
  28.         if(conversorOperacion==45)
  29.         {
  30.             resultado=numero1-numero2;
  31.             operador="resta";
  32.         }
  33.         if(conversorOperacion==42)
  34.         {
  35.             resultado=numero1*numero2;
  36.             operador="multiplicacion";
  37.         }
  38.         if(conversorOperacion==47)
  39.         {
  40.             resultado=numero1/numero2;
  41.             operador="division";
  42.         }
  43.        
  44.         cout<<"Resolviendo\nEspere por favor....."<<endl;
  45.         Sleep(5000);
  46.         cout<<endl;
  47.         cout<<"El resultado es de la "<<operador<<" es de: "<<resultado<<endl;
  48.         cout<<endl;
  49.        
  50.         cout<<"Desea realizar otra operacion: S/N?"<<endl;
  51.         cin>>respuesta;
  52.         system("cls");
  53.        
  54.         }
  55.        
  56.         return 0;
  57.        
  58.         }
  #4 (permalink)  
Antiguo 27/11/2011, 22:50
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problemas con código calculadora c++

esta genial XD pero no puedo o no se usar la biblioteca windows.h se puede hacer sin ella?
  #5 (permalink)  
Antiguo 28/11/2011, 00:47
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Problemas con código calculadora c++

Cita:
Iniciado por hascrishas Ver Mensaje
esta genial XD pero no puedo o no se usar la biblioteca windows.h se puede hacer sin ella?
si, nada mas quitale la funcion Sleep, porque esa funcion depende de esa biblioteca
  #6 (permalink)  
Antiguo 28/11/2011, 09:51
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problemas con código calculadora c++

muchas gracias, solo una pregunta más, que quiere decir esta condición? while(respuesta!="n" && respuesta!="N")
  #7 (permalink)  
Antiguo 28/11/2011, 10:17
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Problemas con código calculadora c++

Cita:
Iniciado por hascrishas Ver Mensaje
muchas gracias, solo una pregunta más, que quiere decir esta condición? while(respuesta!="n" && respuesta!="N")
controla la repeticion de toda la operacion, dice que si respuesta es diferente a "n" o "N" sigue en el while, al final se pregunta si desea realizar otra operacion, SI O NO, si ingresas s, respuesta sera diferente a "n" y a "N" y volvera al while, si la respuesta es "n" o "N", el programa se cierra
  #8 (permalink)  
Antiguo 28/11/2011, 10:53
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problemas con código calculadora c++

y si por ejemplo el ejercicio me pide que haga operaciones como 1+2*2/4 0 10*5/3, este bucle lo haría? perdona, soy un poco cazurro XDD que es lo que hace en ese bucle que se repita así? no sería mejor que la condición fuese un signo? así si no lo es termina la operación en el anterior digito y abajo que ponga el resultado
  #9 (permalink)  
Antiguo 28/11/2011, 11:40
Avatar de baker1562  
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 1 mes
Puntos: 9
Respuesta: Problemas con código calculadora c++

Cita:
Iniciado por hascrishas Ver Mensaje
y si por ejemplo el ejercicio me pide que haga operaciones como 1+2*2/4 0 10*5/3, este bucle lo haría? perdona, soy un poco cazurro XDD que es lo que hace en ese bucle que se repita así? no sería mejor que la condición fuese un signo? así si no lo es termina la operación en el anterior digito y abajo que ponga el resultado
creo que ahi, habra que meter mas numeros y establecer de cuantos numero quieres la operacion digamos 3 o 4 numeros a evaluar, eso es lo que se me ocurre ahorita
  #10 (permalink)  
Antiguo 28/11/2011, 14:33
Avatar de hascrishas  
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 12 años, 5 meses
Puntos: 0
Respuesta: Problemas con código calculadora c++

no, no es el punto, tengo que hacerlo como te he dicho, pero no se... de todas formas gracias ^^
  #11 (permalink)  
Antiguo 28/11/2011, 14:50
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Problemas con código calculadora c++

El primer resultado buscando "calculadora " buscando en el foro C++ sin contar el tuyo fue este:

http://www.forosdelweb.com/f96/dev-c-ejercicio-959964/

Espero que te sirva!

Saludos

Etiquetas: c++
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:34.