Programa en C++ para Calculadora de Números Complejos

Prerrequisitos: Números Complejos , Matemáticas, Programación Orientada a Objetos

Esta es una calculadora de números complejos que realiza muchas de las operaciones que se mencionan a continuación, para simplificar nuestros problemas matemáticos del día a día. La implementación de esta calculadora se realiza utilizando el lenguaje de programación C++ utilizando conceptos de sobrecarga de operadores en OOP.

Planteamiento del problema: 

Escriba un programa para construir una calculadora de números complejos usando C++ que pueda realizar las siguientes operaciones: 

1. Leer Número Complejo: Solicita al usuario ingresar dos números reales e imaginarios de Números Complejos para realizar diferentes operaciones sobre el número complejo.

Example:  Real Part value: 10
               Img Part value: 20
               Real Part value: 5
               Img Part value: 7

2. Mostrar número complejo: si el usuario ha ingresado un número complejo en la función anterior, entonces la pantalla de función ya existe como un número complejo.

Example: Values are:
                    10+i20
                    5+i7

3. Suma de Números Complejos: Suma dos Números Complejos de tal manera que la parte real del 1er número complejo se suma a la parte real del 2do número complejo y la parte imaginaria del 1er número complejo se suma a la parte imaginaria del 2do número complejo que el usuario da como entrada Números complejos.

    Example: Addition is:
                    15+i27

4. Resta de Número Complejo: Resta dos Números Complejos de tal manera que la parte real del 1er número complejo se Resta a la parte real del 2do número complejo y la parte imaginaria del 1er número complejo se Resta a la parte imaginaria del 2do número complejo que el usuario da como entrada Números complejos.

Example: Subtraction is:
                    5+i13

5. Multiplicación de Número Complejo: Multiplica dos Números Complejos que el usuario da como entrada.

Example: Multiplication is:
                    -90+i170   

6. División de Números Complejos: Divide dos Números Complejos que los usuarios dan como Números Complejos de entrada.

Example:  Division is:
                     2.56757+i0.405405 

7. Conjugado de Números Complejos: Encuentra el Conjugado de dos Números Complejos, lo que significa que solo cambia el signo de la parte imaginaria del número complejo que el usuario da como Números Complejos de entrada.

Example:  Conjugate is:
                    10-i20
                    5-i7 

8. Seno de Número Complejo : Encuentra el valor del seno de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  Sin of 1st Complex Number is:
                     -1.3197e+008-i2.03544e+008
               Sin of 2nd Complex Number is:
                    -525.795+i155.537      

9. Coseno de Número Complejo: Encuentra el valor del coseno de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:   Cos of 1st Complex Number is:
                    -2.03544e+008+i1.3197e+008
               Cos of 2nd Complex Number is:
                     155.537+i525.794      

10. Tangente de Número Complejo: Encuentra el valor de Tangente de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:   Tan of 1st Complex Number is:
                      7.75703e-018+i1
              Tan of 2nd Complex Number is:
                      -9.0474e-007+i1

11. Seno Hiperbólico de Número Complejo: Encuentra el valor Seno Hiperbólico de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:   Sinh of 1st Complex Number is:
                     4494.3+i10054.5
              Sinh of 2nd Complex Number is:
                     55.942+i48.7549

12. Coseno Hiperbólico de Número Complejo: Encuentra el valor de Coseno Hiperbólico de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  Cosh of 1st Complex Number is:
                   4494.3+i10054.5
            Cosh of 2nd Complex Number is:
                   55.947+i48.7505

13. Tangente Hiperbólica de Número Complejo: Encuentra el valor de Tangente Hiperbólica de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  Tanh of 1st Complex Number is:
                   1+i3.07159e-009
            Tanh of 2nd Complex Number is:
                    0.999988+i8.99459e-005

14. Logaritmo natural de Número complejo: encuentra el valor de logaritmo natural de dos Números complejos que el usuario proporciona como Números complejos de entrada.

Example:  log of 1st Complex Number is:
                   3.1073+i1.10715
           log of 2nd Complex Number is:
                   2.15203+i0.950547

15. Norma de Número Complejo: Encuentra la Normal de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  norm of 1st Complex Number is:
                  500+i0
           norm of 2nd Complex Number is:
                  74+i0

16. Absoluto de número complejo: encuentra el valor absoluto de dos números complejos, lo que significa que convierte el número complejo negativo en un número complejo positivo y el número complejo positivo sigue siendo el mismo. 

Example:  Absolute of 1st Complex Number is:
                  22.3607+i0
           Absolute of 2nd Complex Number is:
                  8.60233+i0

17. Argumento de Número Complejo: Encuentra Argumento de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  Argument of 1st Complex Number is:
                  1.10715+i0
           Argument of 2nd Complex Number is:
                   0.950547+i0

18. Potencia de Número Complejo: Encuentra la Potencia de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  power of 1st Complex Number is:
                  Enter Power: 2
                 -300+i400
           power of 2nd Complex Number is:
                 Enter Power: 3
                 -610+i182

19. Exponencial de Número Complejo: Encuentra exponencial de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example:  Exponential of 1st Complex Number is:
                  8988.61+i20109
           Exponential of 2nd Complex Number is:
                 111.889+i97.5055

20. Raíz cuadrada de número complejo: encuentra la raíz cuadrada de dos números complejos que los usuarios dan como números complejos de entrada.

Example: Square root of 1st Complex Number is:
                 4.02248+i2.48603
          Square root of 2nd Complex Number is:
                 2.6079+i1.34207

21. Mostrar Parte Real de Número Complejo: Muestra la Parte Real de dos Números Complejos que el usuario da como Números Complejos de entrada.

Example: Real Value of 1st Complex Number is: 10
          Real Value of 2nd Complex Number is: 5

22. Mostrar la parte imaginaria del número complejo: muestra la parte imaginaria de dos números complejos que el usuario da como números complejos de entrada.

Example: Imaginary Value of 1st Complex Number is: 20
          Imaginary Value of 2nd Complex Number is: 7

A continuación se muestra la implementación del enfoque anterior: 

C++

// Complex Number Calculator using C++
#include <cmath>
#include <complex>
#include <iostream>
using namespace std;
class com {
    // private variable declarations
    double reall, img;
 
public:
    // Method to read Complex Number
    void read()
    {
        // Reads Real Value of Complex Number
        cout << "Real Part value: ";
        cin >> reall;
 
        // Reads Imaginary Value of Complex Number
        cout << "Img Part value: ";
        cin >> img;
    }
    // display function declaration
    void display();
 
    //+ operator function declaration
    com operator+(com);
 
    //- operator function declaration
    com operator-(com);
 
    //* operator function declaration
    com operator*(com);
 
    // / operator function declaration
    com operator/(com);
 
    //~ operator function declaration
    com operator~(void);
 
    // sin_value function declaration
    com sin_value();
 
    // cos_value function declaration
    com cos_value();
 
    // tan_value function declaration
    com tan_value();
 
    // sinh_value function declaration
    com sinh_value();
 
    // cosh_value function declaration
    com cosh_value();
 
    // tanh_value function declaration
    com tanh_value();
 
    // log_value function declaration
    com log_value();
 
    // norm_value function declaration
    com norm_value();
 
    // abs_value function declaration
    com abs_value();
 
    // arg_value function declaration
    com arg_value();
 
    // power_value function declaration
    com power_value();
 
    // exp_value function declaration
    com exp_value();
 
    // sqrt_value function declaration
    com sqrt_value();
 
    // Declare inside com class and show Real part of
    // complex number
    double get_real()
    {
        // return real part
        return ((*this).reall);
    }
    // Declare inside com class and
    // show Imaginary part of complex number
    double get_img()
    {
        // return img part
        return ((*this).img);
    }
};
// Display Entered Complex Number
void com::display()
{
    // if imaginary part is positive then
    //  it display real + i img complex number
    if (img >= 0) {
        cout << reall << "+i" << img << endl;
    }
 
    // if imaginary part is negative then
    //  it display real - i img complex number
    else {
        cout << reall << "-i" << (-1) * img << endl;
    }
}
// Add two user entered complex number
com com::operator+(com o2)
{
    // declare temporary variable of class data type
    com temp;
 
    // add real part of two complex number
    //  and store in real part of temporary variable
    temp.reall = reall + o2.reall;
 
    // add imaginary part of two complex number
    //  and store in imaginary part of temporary variable
    temp.img = img + o2.img;
 
    // return temporary variable to function
    return temp;
}
// Subtract two user entered complex number
com com::operator-(com o2)
{
    // declare temporary variable of class data type
    com temp;
 
    // subtract real part of two complex number
    // and store in real part of temporary variable
    temp.reall = reall - o2.reall;
 
    // subtract imaginary part of two complex number and
    // store in imaginary part of temporary variable
    temp.img = img - o2.img;
 
    // return temporary variable to function
    return temp;
}
// Multiply two user entered complex number
com com::operator*(com o2)
{
    // declare temporary variable of class data type
    com temp;
 
    // Add Multiplication of  real part of two complex
    // number & imaginary part of two complex number and
    // store in real part of temporary variable
    temp.reall = (reall * o2.reall) + (-1 * (img * o2.img));
 
    // Add multiplication of real part of 1st and img part
    // of 2nd complex number and multiplication of img part
    // of 1st and real part of 2nd complex number and store
    // in real part of temporary variable
    temp.img = (img * o2.reall) + (reall * o2.img);
 
    // return temporary variable to function
    return temp;
}
// Divide two user entered complex number
com com::operator/(com o2)
{
    // declare temporary,o,num,den
    // variable of class data type
    com o, num, den, temp;
 
    // call conjugate function and perfor conjugate
    // operation
    o = ~o2;
 
    // calculate numerator and denominator complex number
    num = (*this) * (o);
    den = o2 * o;
 
    // divide numerator real part with denominator real part
    // and store in real part of temporary variable
    temp.reall = num.reall / den.reall;
 
    // divide numerator img part with denominator img part
    // and store in img part of temporary variable
    temp.img = num.img / den.reall;
 
    // return temporary variable to function
    return temp;
}
// find conjugate of both complex numbers
com com::operator~(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // Store real part in real part of temporary variable
    temp.reall = reall;
 
    // Store multiplication of -1 and img in img part of
    // temporary variable to make conjugate
    temp.img = -1 * img;
 
    // return temporary variable to function
    return temp;
}
// find sine value of both complex numbers
com com::sin_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // sin() function find sin value of complex number
    sam = sin(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// find cosine value of both complex numbers
com com::cos_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // cos() function find cosin value of complex number
    sam = cos(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// find tangent value of both complex numbers
com com::tan_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // tan() function find tangent value of complex number
    sam = tan(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// find sine hyperbolic value of both complex numbers
com com::sinh_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // sinh() function find sine hyperbolic value of complex
    // number
    sam = sinh(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// find cosine hyperbolic value of both complex numbers
com com::cosh_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // cosh() function find cosine hyperbolic value of
    // complex number
    sam = cosh(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find tangent hyperbolic value of both complex numbers
com com::tanh_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // tanh() function find tangent hyperbolic value of
    // complex number
    sam = tanh(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find natural log value of both complex numbers
com com::log_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // log() function find natural log value of complex
    // number
    sam = log(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find Norm of both complex numbers
com com::norm_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // norm() function find Norm of complex number
    sam = norm(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find Absolute of both complex numbers
com com::abs_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // abs() function find Absolute of complex number
    sam = abs(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find Argument of both complex numbers
com com::arg_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // arg() function find Argument of complex number
    sam = arg(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find power of both complex numbers
com com::power_value(void)
{
    // declare variable p of integer data type
    int p;
 
    // Enter Power
    cout << "Enter Power: ";
    cin >> p;
 
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // pow() function find Power of complex number
    sam = pow(cn, p);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find exponential of both complex numbers
com com::exp_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // exp() function find Exponential of complex number
    sam = exp(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
// it find Square root of both complex numbers
com com::sqrt_value(void)
{
    // declare temporary variable of class data type
    com temp;
 
    // declare cn and sam variable of complex data type
    complex<double> cn((*this).reall, (*this).img);
    complex<double> sam;
 
    // sqrt() function find Square Root of complex number
    sam = sqrt(cn);
 
    // real and img part of sam variable store in real and
    // img part of temporary variable
    temp.reall = real(sam);
    temp.img = imag(sam);
 
    // return temporary variable to function
    return temp;
}
int main()
{
    cout << "**********************Operations On Complex "
            "Number***************************";
 
    // Declare o1,o2 and o3 variable of class name data type
    com o1, o2, o3;
 
    // declare choice variable of integer type
    int choice;
    do {
        // Enter you choice to perform operation
        cout << "\nEnter Choice\n\n";
        cout << "1.Read Complex Number\n\n";
        cout << "2.Display Complex Number\n\n";
        cout << "3.Addition of Complex Number\n\n";
        cout << "4.Subtraction of Complex Number\n\n";
        cout << "5.Multiplication of Complex Number\n\n";
        cout << "6.Division of Complex Number\n\n";
        cout << "7.Conjugate of Complex Number\n\n";
        cout << "8.Sine of Complex Number\n\n";
        cout << "9.Cosine of Complex Number\n\n";
        cout << "10.Tangent of Complex Number\n\n";
        cout << "11.Sine Hyperbolic of Complex Number\n\n";
        cout
            << "12.Cosine Hyperbolic of Complex Number\n\n";
        cout << "13.Tangent Hyperbolic of Complex "
                "Number\n\n";
        cout << "14.Natural Log of Complex Number\n\n";
        cout << "15.Norm of Complex Number\n\n";
        cout << "16.Absolute of Complex Number\n\n";
        cout << "17.Argument of Complex Number\n\n";
        cout << "18.Power of Complex Number\n\n";
        cout << "19.Exponential of Complex Number\n\n";
        cout << "20.Square Root of Complex Number\n\n";
        cout << "21.Show Real Values of Complex Number\n\n";
        cout << "22.Show Imaginary Values of Complex "
                "Number\n\n";
        cout << "23.Exit\n\n";
        cin >> choice;
        cout << "\n";
 
        // use switch case according to user input
        switch (choice) {
        case 1:
            // Enter value of complex number
            cout << "Enter Values: \n";
 
            // call read() function
            o1.read();
            o2.read();
            break;
        case 2:
            cout << "Values are: \n";
 
            // call display function to display complex
            // number
            o1.display();
            o2.display();
            break;
        case 3:
            // call operator+() function to add complex
            // number
            o3 = o1 + o2;
            cout << "Addition is: \n";
            o3.display();
            break;
        case 4:
            // call operator-() function to subtract complex
            // number
            o3 = o1 - o2;
            cout << "Subtraction is: \n";
            o3.display();
            break;
        case 5:
            // call operator*() function to Multiply complex
            // number
            o3 = o1 * o2;
            cout << "Multiplication is: \n";
            o3.display();
            break;
        case 6:
            // call operator/() function to divide complex
            // number
            o3 = o1 / o2;
            cout << "Division is: \n";
            o3.display();
            break;
        case 7:
            // call operator~() function to Find conjugate of
            // complex number
            cout << "Conjugate is: \n";
            o3 = ~o1;
            o3.display();
            o3 = ~o2;
            o3.display();
            break;
        case 8:
            // call sin_value() function to Find sine value
            // of complex number
            cout << "Sin of 1st Complex Number is: \n";
            o3 = o1.sin_value();
            o3.display();
            cout << "Sin of 2nd Complex Number is: \n";
            o3 = o2.sin_value();
            o3.display();
            break;
        case 9:
            // call cos_value() function to Find cosine value
            // of complex number
            cout << "Cos of 1st Complex Number is: \n";
            o3 = o1.cos_value();
            o3.display();
            cout << "Cos of 2nd Complex Number is: \n";
            o3 = o2.cos_value();
            o3.display();
            break;
        case 10:
            // call tan_value() function to Find tangent
            // value of complex number
            cout << "Tan of 1st Complex Number is: \n";
            o3 = o1.tan_value();
            o3.display();
            cout << "Tan of 2nd Complex Number is: \n";
            o3 = o2.tan_value();
            o3.display();
            break;
        case 11:
            // call sinh_value() function to Find sine
            // hyperbolic value of complex number
            cout << "Sinh of 1st Complex Number is: \n";
            o3 = o1.sinh_value();
            o3.display();
            cout << "Sinh of 2nd Complex Number is: \n";
            o3 = o2.sinh_value();
            o3.display();
            break;
        case 12:
            // call cosh_value() function to Find cosine
            // hyperbolic value of complex number
            cout << "Cosh of 1st Complex Number is: \n";
            o3 = o1.cosh_value();
            o3.display();
            cout << "Cosh of 2nd Complex Number is: \n";
            o3 = o2.cosh_value();
            o3.display();
            break;
        case 13:
            // call tanh_value() function to Find tangent
            // hyperbolic value of complex number
            cout << "Tanh of 1st Complex Number is: \n";
            o3 = o1.tanh_value();
            o3.display();
            cout << "Tanh of 2nd Complex Number is: \n";
            o3 = o2.tanh_value();
            o3.display();
            break;
        case 14:
            // call log_value() function to Find log value of
            // complex number
            cout << "log of 1st Complex Number is: \n";
            o3 = o1.log_value();
            o3.display();
            cout << "log of 2nd Complex Number is: \n";
            o3 = o2.log_value();
            o3.display();
            break;
        case 15:
            // call norm_value() function to Find norm of
            // complex number
            cout << "norm of 1st Complex Number is: \n";
            o3 = o1.norm_value();
            o3.display();
            cout << "norm of 2nd Complex Number is: \n";
            o3 = o2.norm_value();
            o3.display();
            break;
        case 16:
            // call abs_value() function to Find absolute of
            // complex number
            cout
                << "Absolute of 1st Complex Number is: \n";
            o3 = o1.abs_value();
            o3.display();
            cout
                << "Absolute of 2nd Complex Number is: \n";
            o3 = o2.abs_value();
            o3.display();
            break;
        case 17:
            // call arg_value() function to Find argument of
            // complex number
            cout
                << "Argument of 1st Complex Number is: \n";
            o3 = o1.arg_value();
            o3.display();
            cout
                << "Argument of 2nd Complex Number is: \n";
            o3 = o2.arg_value();
            o3.display();
            break;
        case 18:
            // call power_value() function to Power norm of
            // complex number
            cout << "power of 1st Complex Number is: \n";
            o3 = o1.power_value();
            o3.display();
            cout << "power of 2nd Complex Number is: \n";
            o3 = o2.power_value();
            o3.display();
            break;
        case 19:
            // call exp_value() function to Find exponential
            // of complex number
            cout << "Exponential of 1st Complex Number is "
                    ": \n";
            o3 = o1.exp_value();
            o3.display();
            cout << "Exponential of 2nd Complex Number is "
                    ": \n";
            o3 = o2.exp_value();
            o3.display();
            break;
        case 20:
            // call sqrt_value() function to Find Square root
            // of complex number
            cout << "Square root of 1st Complex Number is "
                    ": \n";
            o3 = o1.sqrt_value();
            o3.display();
            cout << "Square root of 2nd Complex Number is "
                    ": \n";
            o3 = o2.sqrt_value();
            o3.display();
            break;
        case 21:
            // call get_real() function to get real part of
            // complex number
            cout << "Real Value of 1st Complex Number is: "
                 << o1.get_real() << endl;
            cout << "Real Value of 2nd Complex Number is: "
                 << o2.get_real() << endl;
            break;
        case 22:
            // call get_img() function to get imaginary part
            // of complex number
            cout << "Imaginary Value of 1st Complex Number "
                    "is: "
                 << o1.get_img() << endl;
            cout << "Imaginary Value of 2nd Complex Number "
                    "is: "
                 << o2.get_img() << endl;
            break;
        case 23:
            // it return 1 to do while() loop and stop
            // execution
            return 1;
            break;
        default:
            // if user enter invalid choice then it print
            // Enter valid option!!
            cout << "Enter valid option!!";
            break;
        }
    } while (1);
    return 0;
}

Vídeo de salida: 

Producción: 

********************** Operaciones sobre números complejos ************************ *** 
Introducir opción 
1. Leer número complejo 
2. Mostrar número 
complejo 
3. Suma de número complejo 
4. Resta de número complejo  5. Multiplicación de número complejo 6. División de número complejo 7. Conjugado de
número 
complejo 
8. Seno de complejo Número 
9.Coseno de Número Complejo 
10.Tangente de Número Complejo 
11.Seno  Hiperbólico de Número Complejo
12.Coseno Hiperbólico de Número Complejo 
13.Tangente Hiperbólica de Número Complejo  14.Logaritmo natural de
Número Complejo 
15.Norma de Número Complejo 
16.Absoluto del número complejo 
17. Argumento del número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
1
Introducir valores: 
Valor de parte real: 10 
Img Valor de parte : 20  Valor de
parte real: 5 
Valor de parte de Img: 7
Ingresar opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7. Conjugado del número complejo 
8.Seno del número complejo 
9.Coseno del número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo natural de número complejo 
15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de Número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
2
Los valores son: 
10+i20 
5+i7
Introducir opción 
1.Leer número complejo 
2.Mostrar número complejo 3.Suma 
de número complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12 .Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo 
natural de número complejo  15.Norma de número complejo
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de un número complejo 
21.Mostrar valores reales de un número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
3
La suma es: 
15+i27
Ingresar opción 
1.Leer número complejo 
2.Mostrar número  complejo 3.Suma de número
complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 
6. División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14 .Logaritmo Natural del Número Complejo 
15.Norma del Número Complejo 
16.Absoluto del Número Complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
4
La resta es: 
5+ i13
Introducir opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número 
complejo 5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9 .Coseno de Número Complejo 
10.Tangente de Número Complejo 
11.Seno Hiperbólico de Número Complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo  natural de número
complejo 15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 18.Potencia de número complejo 
19.Exponencial de número 
complejo Número 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
5
La multiplicación es: 
-90+i170
Introducir opción 
1.Leer número complejo 2.Mostrar número  complejo
3.Suma 
de número complejo 
4. Resta de número complejo 
5. Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de complejo Número 
14.Logaritmo natural del número complejo 
15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
6 La
división es: 
2.56757+i0.405405
Ingresar opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno del Número Complejo 
9.Coseno del Número Complejo 
10.Tangente del Número Complejo 11.Seno Hiperbólica del Número Complejo 
12.Coseno 
Hiperbólica  del Número Complejo 13.Tangente
Hiperbólica del Número Complejo 
14.Logaritmo Natural del Número Complejo 
15.Norma del Número Complejo 
16 .Absoluto de Número Complejo 
17.Argumento de Número Complejo 
18.Potencia de Número Complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
7
Conjugar es: 
10-i20 
5-i7
Ingresar opción 
1.Leer número complejo 
2 .Mostrar número 
complejo 
3.Suma de número complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de Número complejo 
11.Seno Hiperbólico de Número Complejo 
12.Coseno Hiperbólico de Número Complejo 
13.Tangente hiperbólica del número complejo 
14.Logaritmo 
natural del número complejo 15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del complejo Número 
21.Mostrar los valores reales del número complejo 
22.Mostrar los valores imaginarios del número complejo 
23.Salir 
8 El
pecado del primer número complejo es: 
-1.3197e+008-i2.03544e+008 El 
pecado del segundo número complejo es: 
-525.795+i155 .537
Introducir opción 
1.Leer número complejo 
2.Mostrar número  complejo 3.Suma de número
complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica del número complejo 
14.Logaritmo 
natural del número complejo 15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del complejo Número 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
9
El cos. del 1.er número complejo es: 
-2.03544e+008+i1.3197e+008 El 
cos. del 2.º número complejo es: 
155.537+i525.794
Introducir opción 
1.Leer el número complejo 
2.Mostrar el número complejo 3.Suma 
del número complejo 
4. Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno
Hiperbólica de Número Complejo  13.Tangente 
Hiperbólica de Número Complejo 14.Logaritmo Natural de Número Complejo 
15.Norma de Número Complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
10
Tan del 1er Número Complejo es: 
7.75703e-018+i1 
Tan del 2do Número Complejo es: 
-9.0474e-007+i1
Ingresar Opción 
1.Leer Número Complejo 
2.Mostrar Número Complejo 3.Suma  de
Número Complejo 
4.Resta de Número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo natural de número complejo 
15.Norma de Número complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23 .Salir 
11
Sinh del 1er Número Complejo es: 
4494.3+i10054.5 
Sinh del 2do Número Complejo es: 
55.942+i48.7549
Introducir opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno del Número Complejo 
9.Coseno del Número Complejo 
10.Tangente del Número Complejo 11.Seno Hiperbólica del Número Complejo 
12.Coseno 
Hiperbólica  del Número Complejo 13.Tangente
Hiperbólica del Número Complejo 
14.Logaritmo Natural del Número Complejo 
15.Norma del Número Complejo 
16 .Absoluto de Número Complejo 
17.Argumento de Número Complejo 
18.Potencia de Número Complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
12
Cosh del primer número complejo es: 
4494.3+i10054.5 
Cosh del segundo número complejo es: 
55.947+i48.7505
Introducir opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8 .Seno de Número Complejo 
9.Coseno de Número Complejo 
10.Tangente de Número Complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo  natural de número
complejo 15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de Número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
13
Tanh del 1er número complejo es: 
1+i3.07159e-009 
Tanh del segundo número complejo es: 
0.999988+i8.99459e-005
Ingresar opción 
1.Leer número complejo 
2.Mostrar  número complejo

3.Suma de número complejo  4.Resta 
de número complejo 
5.Multiplicación de número complejo 6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11. Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólico de número complejo 
14.Logaritmo  natural de número
complejo 15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
14 El
registro del primer número complejo es: 
3.1073+i1.10715 El 
registro del segundo número complejo es: 
2.15203+i0.950547
Ingresar opción 
1.Leer el número complejo 
2.Mostrar el  número complejo
3. Suma de número complejo 
4. Resta de número complejo 
5. 
Multiplicación de número complejo 
6. División de número complejo  7. Conjugado de número complejo 8. Seno de número complejo 9. Coseno de número
complejo  10. Tangente de
número 
complejo 
11. Seno hiperbólico del Número Complejo 
12.Coseno Hiperbólica del Número Complejo 
13.Tangente Hiperbólica del Número Complejo 
14.Logaritmo natural del número complejo 
15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales de Número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
15 la
norma del 1.er número complejo es: 
500+i0  la
norma del 2.º número complejo es: 
74+i0
Introducir opción 
1.Leer el número complejo 
2.Mostrar el número complejo 3.Adición 
de Número complejo 
4. Resta de número complejo 
5. Multiplicación de número complejo 
6. División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo natural de Número complejo 
15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales del número complejo 
22.Mostrar Valores Imaginarios del Número Complejo 
23. Salir 
16
El Absoluto del 1er Número Complejo es: 
22.3607+i0 
El absoluto del segundo número complejo es: 
8.60233+i0
Ingresar opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de Número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo natural de número complejo 
15. Norma del Número Complejo 
16.Absoluto del Número Complejo 
17.Argumento del Número Complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
17 El
argumento del primer número complejo es: 
1.10715+i0 
Argumento del segundo número complejo es: 
0.950547+i0
Ingresar opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de complejo Número 
8.Seno de Número Complejo 
9.Coseno de Número Complejo 
10.Tangente de Número Complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo  natural de número
complejo 15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de número complejo 
18.Potencia de Número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
18
potencia del 1er número complejo es: 
Introducir potencia: 2 
-300+i400 
la potencia del segundo número complejo es: 
Ingrese la potencia: 3 
-610+i182
Ingrese la opción 
1.Lea el número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de Número Complejo 
11.Seno Hiperbólica de Número Complejo 
12.Coseno 
Hiperbólica de Número Complejo  13.Tangente Hiperbólica de Número
Complejo  14.Logaritmo natural de Número Complejo 15.Norma de
Número Complejo 
16.Absoluto de Número Complejo 
17.Argumento de Número Complejo 
18 .Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
19
Exponencial del primer número complejo es: 
8988.61+i20109 
Exponencial del segundo número complejo es: 
111.889+i97.5055
Introducir opción 
1.Leer número complejo 
2 .Mostrar número 
complejo 
3.Suma de número complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de Número complejo 
11.Seno Hiperbólico de Número Complejo 
12.Coseno Hiperbólico de Número Complejo 
13.Tangente hiperbólica del número complejo 
14.Logaritmo 
natural del número complejo 15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del complejo Número 
21.Mostrar los valores reales del número complejo 
22.Mostrar los valores imaginarios del número complejo 
23.Salir 
20
La raíz cuadrada del primer número complejo es: 
4,02248+i2,48603 
La raíz cuadrada del segundo número complejo es: 
2,6079+i1,34207
Introducir opción 
1 .Leer número 
complejo 2.Mostrar número  complejo 3.Suma de
número complejo 
4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica del número complejo 
14.Logaritmo 
natural del número complejo 15.Norma del número complejo 
16.Absoluto del número complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del complejo Número 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
21
El valor real del primer número complejo es: 10 
El valor real del segundo número complejo es: 5
Ingrese la opción 
1.Leer el número complejo 
2.Mostrar el número  complejo 3.Suma del número
complejo 
4.Resta del número complejo 
5.Multiplicación del número complejo 
6. División de número complejo 
7.Conjugado de número complejo 
8.Seno de número complejo 
9.Coseno de número complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14 .Logaritmo Natural del Número Complejo 
15.Norma del Número Complejo 
16.Absoluto del Número Complejo 
17.Argumento del número complejo 
18.Potencia del número complejo 
19.Exponencial del número complejo 
20.Raíz cuadrada del número complejo 
21.Mostrar valores reales del número complejo 
22.Mostrar valores imaginarios del número complejo 
23.Salir 
22
Valor imaginario del 1er complejo El número es: 20 
El valor imaginario del segundo número complejo es: 7
Introducir opción 
1.Leer número complejo 
2.Mostrar número 
complejo 
3.Suma de número complejo 4.Resta de número complejo 
5.Multiplicación de número complejo 
6.División de número complejo 
7 .Conjugado de Número Complejo 
8.Seno de Número Complejo 
9.Coseno de Número Complejo 
10.Tangente de número complejo 
11.Seno hiperbólico de número complejo 
12.Coseno hiperbólico de número complejo 
13.Tangente hiperbólica de número complejo 
14.Logaritmo natural de número complejo 
15.Norma de número complejo 
16.Absoluto de número complejo 
17.Argumento de Número complejo 
18.Potencia de número complejo 
19.Exponencial de número complejo 
20.Raíz cuadrada de número complejo 
21.Mostrar valores reales de número complejo 
22.Mostrar valores imaginarios de número complejo 
23.Salir 
23 
————————— —– 
Proceso salido después de 94,69 segundos con valor de retorno 1 
Presione cualquier tecla para continuar. . .

Publicación traducida automáticamente

Artículo escrito por vikramramwani2 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *