Tecnología y Electrónica, pregunta formulada por byroneg593, hace 1 año

Realizar un programa en c++ con clases y funciones que realice las 4 operaciones básicas

*Pedir al usuario que ingrese los números que desea operar y la cantidad de cuantos números va a operar

*El usuario debe escoger la operación que va a realizar

*El usuario debe escoger si desea realizar otra operación, ingresar otros números

*El usuario finaliza el programa


fv11: ok
xCesar: te salió?
fv11: estoy en eso
byroneg593: les salio?
fv11: ya casi, al usar la clase me estaba confundiendo jaja pero ya casi termino
fv11: lo que si confunde un poco es la parte de la cantidad de cuantos numeros va a operar

Respuestas a la pregunta

Contestado por fv11
2

Respuesta: te regalo dos versiones del codigo, no son tan diferentes el uno del otro pero te lo voy a explicar lo mas sencillo que pueda.

1. sin vectores

#include <iostream>

using namespace std;

class Calculadora{

 public:

   void SumarDatos(int);

   void RestarDatos(int);

   void MultiplicarDatos(int);

   void DividirDatos(int);

   Calculadora();

};

Calculadora::Calculadora(){

}

int main() {

 Calculadora c1;

 int op=0,total=0,op2=0;

 do{  

   cout << "Digite la cantidad de numeros a operar:\n";

   cin>>total;

   cout<<" CALCULADORA"<<endl;

   cout<<" 1.Sumar."<<endl;

   cout<<" 2.Restar."<<endl;

   cout<<" 3.Multiplicar."<<endl;

   cout<<" 4.Dividir."<<endl;

   cout<<"Operacion a realizar:"<<endl;

   cin>>op;

   switch(op){

     case 1:

           c1.SumarDatos(total);

           break;

     case 2:

           c1.RestarDatos(total);

           break;

     case 3:

           c1.MultiplicarDatos(total);

           break;

     case 4:

           c1.DividirDatos(total);

           break;  

     default:

       cout<<"Operacion no valida.";                        

   }

   cout<<"\n Para continuar digite 1, para salir digite otro numero"<<endl;

   cin>>op2;

 }while(op2==1);

}

//metodos

void Calculadora::SumarDatos(int total){

 cout<<"SUMA"<<endl;

 double suma=0,numero=0;

 string mensaje="";

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero;

     suma=suma+numero;

 }

 cout<<"="<<suma;

}

void Calculadora::RestarDatos(int total){

 cout<<"RESTA"<<endl;

 int interaccion=0;

 double res=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

     if(interaccion==0){

         res=numero[i]-res;

     }else if(interaccion>0){

         res=res-numero[i];

     }

     interaccion++;

 }

 cout<<"="<<res;

}

void Calculadora::MultiplicarDatos(int total){

 cout<<"MULTIPLICACION"<<endl;

 int interaccion=0;

 double mul=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

     if(interaccion==0){

         mul=numero[i]*1;

     }else if(interaccion>0){

         mul=mul*numero[i];

     }

     interaccion++;

 }

 cout<<"="<<mul;  

}

void Calculadora::DividirDatos(int total){

 cout<<"MULTIPLICACION"<<endl;

 int interaccion=0;

 double div=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

     if(interaccion==0){

         div=numero[i]/1;

     }else if(interaccion>0){

         div=div/numero[i];

     }

     interaccion++;      

 }

 cout<<"="<<div;  

}

2. con vectores

#include <iostream>

using namespace std;

class Calculadora{

 public:

   void SumarDatos(int);

   void RestarDatos(int);

   void MultiplicarDatos(int);

   void DividirDatos(int);

   Calculadora();

};

Calculadora::Calculadora(){

}

int main() {

 Calculadora c1;

 int op=0,total=0,op2=0;

 do{  

   cout << "Digite la cantidad de numeros a operar:\n";

   cin>>total;

   cout<<" CALCULADORA"<<endl;

   cout<<" 1.Sumar."<<endl;

   cout<<" 2.Restar."<<endl;

   cout<<" 3.Multiplicar."<<endl;

   cout<<" 4.Dividir."<<endl;

   cout<<"Operacion a realizar:"<<endl;

   cin>>op;

   switch(op){

     case 1:

           c1.SumarDatos(total);

           break;

     case 2:

           c1.RestarDatos(total);

           break;

     case 3:

           c1.MultiplicarDatos(total);

           break;

     case 4:

           c1.DividirDatos(total);

           break;  

     default:

       cout<<"Operacion no valida.";                        

   }

   cout<<"\n Para continuar digite 1, para salir digite otro numero"<<endl;

   cin>>op2;

 }while(op2==1);

}

//metodos

void Calculadora::SumarDatos(int total){

 cout<<"SUMA"<<endl;

 double suma=0,numero=0;

 string mensaje="";

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero;

     suma=suma+numero;

 }

 cout<<"="<<suma;

}

void Calculadora::RestarDatos(int total){

 cout<<"RESTA"<<endl;

 int interaccion=0;

 double res=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

 }

 for(int i=0;i<total;i++){

     if(interaccion==0){

         res=numero[i]-res;

     }else if(interaccion>0){

         res=res-numero[i];

     }

     interaccion++;

 }

 cout<<"="<<res;

}

void Calculadora::MultiplicarDatos(int total){

 cout<<"MULTIPLICACION"<<endl;

 int interaccion=0;

 double mul=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

 }

 for(int i=0;i<total;i++){

     if(interaccion==0){

         mul=numero[i]*1;

     }else if(interaccion>0){

         mul=mul*numero[i];

     }

     interaccion++;

 }

 cout<<"="<<mul;  

}

void Calculadora::DividirDatos(int total){

 cout<<"MULTIPLICACION"<<endl;

 int interaccion=0;

 double div=0,numero[total];

 for(int i=0;i<total;i++){

     cout<<(i+1)<<">";

     cin>>numero[i];

 }

 for(int i=0;i<total;i++){

     if(interaccion==0){

         div=numero[i]/1;

     }else if(interaccion>0){

         div=div/numero[i];

     }

     interaccion++;

 }

 cout<<"="<<div;  

}

nota: es el mismo código que el anterior pero con la diferencia que aquí hago uso de vectores, cumple exactamente la misma función.

Explicación:

espero te funcionen y mucha suerte


byroneg593: pero no corre
byroneg593: lo copie primero en el bloc de notas y ni así
fv11: que raro, lo probe en varios compiladores en internet y si funciona
fv11: vuelve a probarlo, copia todo el codigo
byroneg593: en el compilador online tampoco funciona
fv11: cual copiaste?
fv11: ya los edite otra vez, faltaban un par de lineas del codigo ahora si ya deberia funcionar
byroneg593: el de vectores pero ya corrio xd
byroneg593: gracias
fv11: jaja dale bro
Otras preguntas