//TODO Declarar implementación de interfaces (al menos Comparable) //TODO definir campos //TODO constructor privado //TODO completar proptotipo y cuerpo de los métodos instanciadores newFromCartesian(double real, double imaginary){ } newFromPolar(double magnitude, double argument){ } //TODO reescritura de métodos de Object que se coinsideren adecuados (al menos toString) //TODO definir métodos de interfaces //TODO completar proptotipo y cuerpo de los siguientes métodos real(){ } imaginary(){ } magnitude(){ } argument(){ } conjugate(){ } inverse(){ } add(Complex c1, Complex c2){ } multiply(double d){ } multiply(Complex c1, Complex c2){ } divide(Complex c1, Complex c2){ } pow(Complex c, double d){ } sqrt(Complex c){ } // Main para chequear el funcionamiento de buena parte de los métodos. // Deben obtenerse diez lineas con diez primos en versión cartesiana y polar más un cero o una cantidad muy próxima a cero public static void main(String[] args) { SortedSet<Complex> set = new TreeSet<>(); for (int i = 0; i < 10; i++) set.add(newFromCartesian(Math.random()-0.5,Math.random()-0.5)); for (Complex c1 : set) { Complex c2 = newFromPolar(c1.magnitude(),c1.argument()); System.out.println(c1 + " --> " + c2 + " --> " + add(sqrt(multiply(c1,c1)), divide(newFromCartesian(1.0,0.0),c2.multiply(-1)).inverse()).magnitude()); } } -------------------------------------------------------------------------------- class Folder { int x,y; //posición del vértice superior izquierdo del rectángulo. int width,height; //ancho y alto del rectángulo. String dir; //el path del directorio p.ej.: “c:/Windows/Media”. //aquí el resto de la definición de la clase }