complex number

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter5: Control Structures Ii (repetition)
Section: Chapter Questions
Problem 30PE
icon
Related questions
Question

A complex number is a number in the form a+bi, where a and b are real numbers and i is √(-1)

 

The numbers a and b are known as the real part and imaginary part of the complex number, respectively. You can perform addition, subtraction, multiplication, and division for complex numbers using the following formulas:

 

a + bi   +   c + di  =  (a+c) + (b+d)i    (addition)

a + b    (c + di= (a−c) + (b−d)i   (subtraction)

(a + bi* (c + di= (ac−bd) + (bc+ad)i   (multiplication)

(a + bi/ (c + di)  = (ac+bd) / (c2+d2) + (bc−ad)/ (c2+d2)   (division)

 

You can obtain the Absolute Value for a complex number using the following formula:

|a + bi|  =  √(a2 + b2)

 

A Complex number can be interpreted as a point on a plane by identifying the (a,b) values as the coordinates of the point. The absolute value of the complex number corresponds to the distance of the point to the origin, as shown in the example below.

 

(1) Design a class named Complex for representing complex numbers

  • Include methods add­subtractmultiplydivide, and abs for performing complex-number operations
  • 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.
  • Your Complex class should also implement Cloneable and Comparable.
    • Compare two complex numbers using their absolute values. 
    •  
  •  Provide three Constructors:  Complex(a, b)Complex(a), and Complex() 
    • Complex() creates a Complex object for number 0
    • Complex(a) creates a Complex object with 0 for b.
  • Also provide the getRealPart() and get imaginary part() methods for returning the real part and the imaginary part of the complex number, respectively.
  •  

(2) Draw the UML class diagram and implement the class.

 

(3) Write a Test program

  • Prompt the user to enter two complex numbers
  • Displays the result of their addition, subtraction, multiplication, division, and absolute value.

A sample run is shown below:

 

Enter the first complex number: 3.5  5.5

  

Enter the second complex number: –3.5  1

   

(3.5 + 5.5i) + (–3.5 + 1.0i) = 0.0 + 6.5i

(3.5 + 5.5i) – (–3.5 + 1.0i) = 7.0 + 4.5i

(3.5 + 5.5i) * (–3.5 + 1.0i) = –17.75 + –15.75i

(3.5 + 5.5i) / (–3.5 + 1.0i) = –0.5094 + –1.7i

|(3.5 + 5.5i)| = 6.519202405202649

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Binary numbers
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
EBK JAVA PROGRAMMING
EBK JAVA PROGRAMMING
Computer Science
ISBN:
9781337671385
Author:
FARRELL
Publisher:
CENGAGE LEARNING - CONSIGNMENT
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr