I have created one multiplication of complex function using prototype in java-script
function ComplexNumber(real,imaginary) {
this.real = real;
this.imaginary = imaginary;
}
ComplexNumber.prototype = {
mult: function() {
var multiplier = arguments[0];
if(arguments.length != 1)
multiplier = new ComplexNumber(arguments[0], arguments[1]);
return new ComplexNumber(this.real * multiplier.real - this.imaginary * multiplier.imaginary,
this.real * multiplier.imaginary + this.imaginary * multiplier.real);
},
toString: function() {
return this.real + " + " + this.imaginary + "j";
}
},
var complexA = new ComplexNumber(5, 8),
complexB = new ComplexNumber(3, 4),
complexSum = complexA.mult(complexB);
console.log(complexSum.toString());
I have to create division of complex number I tried but it didnt work... following is my div function :
div : function(){
var multiplier = arguments[0];
if(arguments.length != 1)
multiplier = new ComplexNumber(arguments[0], arguments[1]);
return new ComplexNumber((this.real * multiplier.real - this.imaginary * multiplier.imaginary,
this.real * multiplier.imaginary + this.imaginary * multiplier.real)/( ((this.real)*(this.real))) +((this.multiplier)*(this.multiplier)));
},
According to
(a+ib)/(c+id)=(ac+bd+i(bc-ad))/(c^2+d^2)
formula , you need this:
var det = multiplier.real*multiplier.real + multiplier.imaginary * multiplier.imaginary;
return new ComplexNumber(
(this.real * multiplier.real + this.imaginary * multiplier.imaginary)/det,
(this.imaginary * multiplier.real - this.real * multiplier.imaginary)/det
);