1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Ksenya-84 [330]
3 years ago
15

Design a class named Complex for representing complex numbers and the methods add, subtract, multiply, divide, abs for performin

g complex-number operations, and override toString method for returning a string representation for a complex number. The toString method returns a + bi as a string. If b is 0, it simply returns a.
Provide three constructors Complex(a, b), Complex(a), and
Complex(). Complex() creates a Complex object for number 0 and
Complex(a) creates a Complex object with 0 for b. Also provide
the getRealPart() and getImaginaryPart() methods for returning
the real and imaginary part of the complex number, respectively.
Your Complex class should also implement the Cloneable
interface.
Write a test program that prompts the user to enter two complex numbers and display the result of their addition, subtraction, multiplication, and division.
Here is the main class. It cannot be changed.
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter the first complex number: ");
double a = input.nextDouble();
double b = input.nextDouble();
Complex c1 = new Complex(a, b);
System.out.print("Enter the second complex number: ");
double c = input.nextDouble();
double d = input.nextDouble();
Complex c2 = new Complex(c, d);
System.out.println("(" + c1 + ")" + " + " + "(" + c2 + ")" + " = " + c1.add(c2));
System.out.println("(" + c1 + ")" + " - " + "(" + c2 + ")" + " = " + c1.subtract(c2));
System.out.println("(" + c1 + ")" + " * " + "(" + c2 + ")" + " = " + c1.multiply(c2));
System.out.println("(" + c1 + ")" + " / " + "(" + c2 + ")" + " = " + c1.divide(c2));
System.out.println("|" + c1 + "| = " + c1.abs());
Complex c3 = (Complex)c1.clone();
System.out.println(c1 == c3);
System.out.println(c3.getRealPart());
System.out.println(c3.getImaginaryPart());
}
}
Computers and Technology
1 answer:
Tanzania [10]3 years ago
3 0

Answer:

Explanation:

The following code is written in Java, it creates the entire complex class as requested so that it works with the main method that has been provided in the question without having to change anything in the main method. Proof of output can be seen in the attached picture below

import java.util.Scanner;

class Test implements Cloneable{

   public static void main(String[] args) {

       Scanner input = new Scanner(System.in);

       System.out.print("Enter the first complex number: ");

       double a = input.nextDouble();

       double b = input.nextDouble();

       Complex c1 = new Complex(a, b);

       System.out.print("Enter the second complex number: ");

       double c = input.nextDouble();

       double d = input.nextDouble();

       Complex c2 = new Complex(c, d);

       System.out.println("(" + c1 + ")" + " + " + "(" + c2 + ")" + " = " + c1.add(c2));

       System.out.println("(" + c1 + ")" + " - " + "(" + c2 + ")" + " = " + c1.subtract(c2));

       System.out.println("(" + c1 + ")" + " * " + "(" + c2 + ")" + " = " + c1.multiply(c2));

       System.out.println("(" + c1 + ")" + " / " + "(" + c2 + ")" + " = " + c1.divide(c2));

       System.out.println("|" + c1 + "| = " + c1.abs());

       Complex c3 = c1;

       System.out.println(c1 == c3);

       System.out.println(c3.getRealPart());

       System.out.println(c3.getImaginaryPart());

   }

}

class Complex implements Cloneable {

   public interface Cloneable { }

   private double realPart;

   public double getRealPart() {

       return realPart;

   }

   public void setReal(double real) {

       this.realPart = real;

   }

   private double imaginaryPart;

   public double getImaginaryPart() {

       return imaginaryPart;

   }

   public void setImaginary(double imaginary) {

       this.imaginaryPart = imaginary;

   }

   public Complex(double a, double b) {

       realPart = a;

       imaginaryPart = b;

   }

   public Complex(double a) {

       realPart = a;

       imaginaryPart = 0;

   }

   public Complex() { }

   public Complex add(Complex comp2) {

       double real1 = this.getRealPart();

       double real2 = comp2.getRealPart();

       double imaginary1 = this.getImaginaryPart();

       double imaginary2 = comp2.getImaginaryPart();

       return new Complex(real1 + real2, imaginary1 + imaginary2);

   }

   public Complex abs() {

       double real1 = Math.abs(this.getRealPart());

       double imaginary1 = Math.abs(this.getImaginaryPart());

       return new Complex(real1, imaginary1);

   }

   public Complex subtract(Complex comp2) {

       double real1 = this.getRealPart();

       double real2 = comp2.getRealPart();

       double imaginary1 = this.getRealPart();

       double imaginary2 = comp2.getRealPart();

       return new Complex(real1 - real2, imaginary1 - imaginary2);

   }

   public Complex multiply(Complex comp2) {

       double real1 = this.getRealPart();

       double real2 = comp2.getRealPart();

       double imaginary1 = this.getRealPart();

       double imaginary2 = comp2.getRealPart();

       return new Complex(real1 * real2, imaginary1 * imaginary2);

   }

   public Complex divide(Complex comp2) {

       double real1 = this.getRealPart();

       double real2 = comp2.getRealPart();

       double imaginary1 = this.getRealPart();

       double imaginary2 = comp2.getRealPart();

       return new Complex(real1 / real2, imaginary1 / imaginary2);

   }

   public String toString() {

       String result;

       result = realPart + " + " + imaginaryPart + "i";

       return result;

   }

}

You might be interested in
Which procedure is recommended when cleaning inside a computer? Clean the hard drive heads with a cotton swab. Hold the CPU fan
ddd [48]

Answer:

Hold the CPU fan so that it won't spin and blow this with compressed air.

Explanation:

While cleaning the computer system from the inner side then we have to follow some steps.

  • Firstly, shut down the system properly and remove it from the power supply.
  • Then, open the cabinet of the computer system.
  • Then, clean the internal parts of the system through simple air pressure and hold the CPU fan during that time to avoid spinning.
  • Clear the dirt layer using the can of compressed air over the cabinet fans.
8 0
3 years ago
5. The best way to clear your Reader is to
Fantom [35]

Answer:

Mark all posts as read

Explanation:

I've did it before

7 0
3 years ago
Read 2 more answers
Which of the following are picture adjustments that can be made to images?
Masteriza [31]

Answer:

D - All of the above

Explanation:

8 0
3 years ago
Read 2 more answers
What is the purpose of a register in a CPU? Describe three types of registers.
Ganezh [65]

Answer:

I hope this answer is correct

Explanation:

Internal registers include the instruction register (IR), memory buffer register (MBR), memory data register (MDR), and memory address register (MAR). The instruction register fetches instructions from the program counter (PC) and holds each instruction as it is executed by the processor.

5 0
3 years ago
________ is the process of inspecting data that has been input to a program to make sure it is valid before using it in a comput
Mumz [18]

Answer:

Hence, <u>Input Validation</u> is the process of inspecting data that has been input to a program to make sure it is valid before using it in a computation.

Explanation:

The input should be validated before further processing to avoid problems in execution of program afterwards.

The process of input validation is defined to make sure that the input is valid.

Hence, <u>Input Validation</u> is the process of inspecting data that has been input to a program to make sure it is valid before using it in a computation ..

3 0
3 years ago
Other questions:
  • Sam has installed a new CPU in a client’s computer, but nothing happens when he pushes the power button on the case. The LED on
    14·1 answer
  • Which of these options would likely have a better playback experience in your presentation?
    8·2 answers
  • Rapid development programming languages eliminate the possibility of having bugs in code. True or False
    8·1 answer
  • Which of the following works on the pay-per-click (PPC) and cost-per-click (CPC) concept? ~ Plato
    9·1 answer
  • Circuit-switched networks provide connection between two parties that: Group of answer choices is dedicated for use by the parti
    10·1 answer
  • If you're a beginner to data analysis, what is the first thing you should check when you build data queries?
    11·1 answer
  • Role of User Defined Iprms for creation of paten
    8·1 answer
  • 9.
    8·1 answer
  • What is the name for data generated by a computer using an algorithm?
    7·1 answer
  • ________ is the actual speed of data transfer that is achieved between two nodes on a network and is always less than or equal t
    5·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!