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;
}
}