package cal_comp;

Programación Orientada a Objetos.

Clase Complejo.

 

A continuación se presenta un ejemplo de la implementación de la clase complejo.

 

Para ver un ejemplo de ejecución de esta, presionar aquí.

 

 

/**

 * <p>Title: Caladora para numeros complejos</p>

 * <p>Description: </p>

 * <p>Copyright: Copyright (c) 2003</p>

 * <p>Company: UMSNH</p>

 * @author Felix Calderon Solorio y sus alumons

 * @version 1.0

 */

 

public class complejo

{

  double real, imag;

  boolean espolar;

 

  complejo(double r, double x, boolean Esp)

  {

    real = r;

    imag = x;

    espolar = Esp;

  }

 

  complejo()

  {

     real = 0;

     imag = 0;

     espolar = false;

  }

 

 

  public void suma(complejo a, complejo b)

  {

    if(a.espolar) a.rectangular();

    if(b.espolar) b.rectangular();

    this.real = a.real + b.real;

    this.imag = a.imag + b.imag;

    this.espolar = false;

  }

 

  public void resta(complejo a, complejo b)

  {

    if(a.espolar) a.rectangular();

    if(b.espolar) b.rectangular();

    this.real = a.real - b.real;

    this.imag = a.imag - b.imag;

    this.espolar = false;

  }

 

  void rectangular()

  {

    double r,x;

    r = this.real;

    x = this.imag;

 

    this.real = r*Math.cos(x);

    this.imag = r*Math.sin(x);

    this.espolar = false;

  }

 

 

  public void multiplica(complejo a, complejo b)

  {

    if(!a.espolar)a.polar();

    if(!b.espolar)b.polar();

    this.real = a.real * b.real;

    this.imag = a.imag + b.imag;

    this.espolar = true;

  }

 

  public void division(complejo a, complejo b)

  {

    if(!a.espolar)a.polar();

    if(!b.espolar)b.polar();

    this.real = a.real / b.real;

    this.imag = a.imag - b.imag;

    this.espolar = true;

  }

 

  String Real()

  {

    String datos="";

    datos += this.real;

    return datos;

  }

 

  String Imag()

  {

    String datos="";

    datos += this.imag;

    return datos;

  }

  void polar()

  {

    double mag, arg;

    mag = Math.sqrt(this.real*this.real + this.imag*this.imag);

    arg = Math.atan2(this.imag,this.real);

    this.real = mag;

    this.imag = arg;

    this.espolar = true;

  }

}

 

Regresar.