Question: 7. Methods add(MyComplex right) and subtract(MyComplex right) that adds and subtract the given MyComplex instance (called right), into/from this instance and returns this instance. (a

 7. Methods add(MyComplex right) and subtract(MyComplex right) that adds and subtractthe given MyComplex instance (called right), into/from this instance and returns this

7. Methods add(MyComplex right) and subtract(MyComplex right) that adds and subtract the given MyComplex instance (called right), into/from this instance and returns this instance. (a + bi)+(c + di) = (a+c) + (b+d)i (a + bi) - (c + di) = (a-c) + (b-d)i o Hints: o return this; // return "this" instance You are required to: Write Java code for the MyComplex class. Write a test driver class to test all public methods defined in question 1 (number 1 - 7). You do NOT need to implement other methods not specified in (1-7) Write an application called MyComplexApp that uses the MyComplex class. The application shall prompt the user to enter two complex numbers, print their values, check for real, imaginary and equality, and carry out all the arithmetic operations ( Add and Subtract) mentioned above. Sample test run Enter complex number 1 (real and imaginary part): 1.1 2.2 Enter complex number 2 (real and imaginary part): 3.3 4.4 Number 1 is: (1.1 + 2.2i) (1.1 + 2.2i) is NOT a pure real number (1.1 + 2.2i) is NOT a pure imaginary number Number 2 is: (3.3 + 4.4i) (3.3 + 4.4i) is NOT a pure real number (3.3 + 4.4i) is NOT a pure imaginary number The UML class shown below is for the complex number representation. 3.1 Ex: The My Complex class "(real+imagi)", e.g., "(3+4i)" In radians My Complex -real: double = 0.0 - imag: double = 0.0 +MyComplex() +MyComplex(real: double, imag: double) +getReal(): double +setReal (real: double):void +get Imag(): double +set Imag(imag:double):void +setValue(real:double, imag: double):void toString(): String +isReal(): boolean +isImaginary(): boolean +equals(real:double, imag: double): boolean +equals(another:MyComplex): boolean +magnitude(): double +argument(): double +add(right: MyComplex): My Complex +addNew(right:MyComplex): MyComplex +subtract(right:MyComplex): MyComplex +subtract New(right:MyComplex):MyComplex +multiply(right: MyComplex):MyComplex +divide(right: MyComplex):My Complex conjugate(): MyComplex add(), subtract(),multiply(),divide(): add/subtract/multiply/divide the given instance right into this instance, and return this instance. addNew(), subtractNew(): add/subtract this and right, and return a new instance, this instance shall not be changed. conjugate(): on this instance Question (1) A class called MyComplex, which models complex numbers x + yi, is designed as shown in the class diagram given above. It contains: . Two instance variables named real (double) and imag (double) which stores the real and imaginary parts of the complex number, respectively. 1. A constructor that creates a My Complex instance with the given real and imaginary values. 2. A default constructor that creates a MyComplex at 0.0 + 0.0 i. 3. Getters and setters for instance variables real and imag. 4. A method setValue() to set the value of the complex number (both real and imaginary parts) 5. Methods is Real() and isImaginary that returns true if this complex number is real or imaginary, respectively. 6. A method equals(double real, double imag) that returns true if this complex number is equal to the given complex number (real, imag). a. Hints: b. return (this.real == real && this.imag == imag)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!