Un número complejo se representa en forma binomial como:
- "a" es la parte real
- "b" es la parte imaginaria
Suma.
La suma z + w de los números complejos z = a + b i, w = c + d i, es el número complejo
Resta.
Producto.
(2 + 3i)(4 + 7i)= 2*4 + 2*7i + 4*3i + 3*7*i2
= 8 + 14i + 12i + 21*(-1)
= (8 - 21) + (14 + 12)i
= -13 + 26i.
Recordando las reglas para operar con numeros complejos, diseñaremos nuestra clase "Numero Complejo".
public class Complejo {
private int real;
private int img;
public Complejo (){
real=0;
img=0;
}
public Complejo(double r, double i){
real =(int) r;
img = (int)i;
}
public Complejo(int r, int i){
real = r;
img = i;
}
public Complejo sumar(Complejo c){
/**
* Metodo que devuelve la suma de dos complejos
* @param Un numero complejo c
* @return La suma de complejos en r
*/
Complejo r= new Complejo();
r.setReal(real + c.getReal());
r.setImg(img + c.getImg());
return r;
}
public Complejo restar(Complejo c){
/**
* Metodo que devuelve la resta de dos complejos
* @param El numero complejo c a restar
* @return La resta de complejos en r
*/
Complejo r= new Complejo();
r.setReal(real - c.getReal());
r.setImg(img - c.getImg());
return r;
}
public Complejo multiplicar(Complejo c){
/**
* Metodo que devuelve la multiplicacion de dos complejos
* @param El numero complejo c a multiplicar
* @return La multiplicacion de complejos en r
*/
Complejo r= new Complejo();
r.setReal(real*c.getReal() - img*c.getImg());
r.setImg(real*c.getImg() + img*c.getReal());
return r;
}
public int getReal() {
return real;
}
public void setReal(int real) {
this.real = real;
}
public int getImg() {
return img;
}
public void setImg(int img) {
this.img = img;
}
public String getString(){
/**
* Metodo que devuelve el numero complejo en la forma a+bi
* @return Un string del complejo en el formato a+bi
*/
if (this.img>=0) return " "+this.real+" + "+this.img+"i";
else return " "+this.real+" "+this.img+"i";
}
}
Explicacion:
Disponemos de dos variables "real" e "img"
de 3 constructores "complejo", uno sin atributos, un segundo que espera reales y que concertira a entero y finalmente un tercero que acepta valores enteros.
Las funciones SUMAR, RESTAR Y MULTIPLICAR.
Funciones para devolver y colocar variables en los objetos.
Una funcion "getstring" que nos sirve para devolver el resultado segun el formato de los numeros complejos (a+bi).
2 comentarios:
Muy limpio su codigo ;) , un saludo!!
me marca un erro en if(this.img =>0) dice "cannot implicitly convert int to bool" , me podrias ayudar.? gracias
Publicar un comentario