martes, 15 de septiembre de 2015

Ejercicio 4 entrada de datos por teclado en Clases y Constructores

Codificación CodeBlocks

#include <iostream>
#include <iomanip>
using namespace std;
class Complejo
{
private:
    double parteReal;
    double parteImaginaria;
public:
  Complejo(double =1 , double =1);
  void estComplejo(double, double);
  double obtenerParteReal();
  double obtenerParteImaginaria();
  Complejo obtenerNumeroComplejo();
  Complejo sumaComplejos(Complejo,Complejo);
  Complejo restaComplejos(Complejo,Complejo);
  void imprimeComplejo(Complejo);
};
Complejo::Complejo(double real, double imag)
{
    parteReal=real;
    parteImaginaria=imag;
}
void Complejo::estComplejo(double re, double ima)
{
    parteReal=re;
    parteImaginaria=ima;
}
double Complejo::obtenerParteReal()
{
    return parteReal;
}
double Complejo::obtenerParteImaginaria()
{
    return parteImaginaria;
}
Complejo obtenerNumeroComplejo(Complejo numC)
{
    return numC;
}
Complejo Complejo::sumaComplejos(Complejo c1,Complejo c2)
{
    Complejo resul;
    double pR1,pR2,pI1,pI2,sR,sI;
    pR1=c1.obtenerParteReal();
    pR2=c2.obtenerParteReal();
    pI1=c1.obtenerParteImaginaria();
    pI2=c2.obtenerParteImaginaria();
    sR=pR1+pR2;
    sI=pI1+pI2;
    resul.estComplejo(sR,sI);
    return resul;
}
Complejo Complejo::restaComplejos(Complejo c1,Complejo c2)
{
    Complejo resul;
    double pR1,pR2,pI1,pI2,rR,rI;
    pR1=c1.obtenerParteReal();
    pR2=c2.obtenerParteReal();
    pI1=c1.obtenerParteImaginaria();
    pI2=c2.obtenerParteImaginaria();
    rR=pR1-pR2;
    rI=pI1-pI2;
    resul.estComplejo(rR,rI);
    return resul;
}
void Complejo::imprimeComplejo(Complejo re)
{
    cout<<re.obtenerParteReal()<<" + "<<re.obtenerParteImaginaria()<<"i"<<endl;
}

int main()
{
    double parteR1,parteR2,parteI1,parteI2;
    Complejo  numC1,numC2,resC;
    cout<<"Introduce la parte real del numero complejo 1 : ? ";
    cin>>parteR1;
    cout<<"Introduza la parte imaginaria del numero complejo 1 : ? ";
    cin>>parteI1;
    numC1.estComplejo(parteR1,parteI1);
    cout<<"Introduce la parte real del numero complejo 2 : ? ";
    cin>>parteR2;
    cout<<"Introduza la parte imaginaria del numero complejo 2 : ? ";
    cin>>parteI2;
    numC2.estComplejo(parteR2,parteI2);
    resC=resC.sumaComplejos(numC1,numC2);
    cout<<"El resultado de la suma de los numeros complejos\n";
    cout<<setw(8)<<numC1.obtenerParteReal()<<" + "<<numC1.obtenerParteImaginaria()<<"i"<<endl;
    cout<<setw(8)<<numC2.obtenerParteReal()<<" + "<<numC2.obtenerParteImaginaria()<<"i"<<endl;
    cout<<setw(4)<<"=";
    resC.imprimeComplejo(resC);
    resC=resC.restaComplejos(numC1,numC2);
    cout<<"\n\nEl resultado de la resta de los numeros complejos\n";
    cout<<setw(5)<<numC1.obtenerParteReal()<<" + "<<numC1.obtenerParteImaginaria()<<"i"<<endl;
    cout<<setw(5)<<numC2.obtenerParteReal()<<" + "<<numC2.obtenerParteImaginaria()<<"i"<<endl;
    cout<<setw(4)<<"=";
    resC.imprimeComplejo(resC);
    return 0;
}

No hay comentarios:

Publicar un comentario