/** Complex - implements a complex number */ public final class Complex { private double real, // the real part imag; // the imaginary public Complex(double r, double i) { real = r; imag = i; } public Complex(Complex c) { real = c.real; imag = c.imag; } public double getReal() { return real; } public double getImag() { return imag; } public Complex add(Complex c) { real += c.real; imag += c.imag; return this; } public Complex multiply(Complex c) { double temp = real*c.real - imag*c.imag; imag = real*c.imag + imag*c.real; real = temp; return this; } public double sizeSquared() { return real*real + imag*imag; } }