Question
C++ Create a class called Complex for performing arithmetic with complex numbers. Write a program to test your class. Complex numbers have the form realPart
C++ Create a class called Complex for performing arithmetic with complex numbers. Write a program to test your class. Complex numbers have the form realPart + imaginaryPart * i
where i is:
Use double variables to represent the private data of the class.
Provide a constructor that enables an object of this class to be initialized when its declared. The constructor should contain default values in case no initializers are provided.
Provide these public member functions that perform the following tasks:
add Adding two Complex numbers: The real parts are added together and the imaginary parts are added together.
subtract Subtracting two Complex numbers: The real part of the right operand is subtracted from the real part of the left operand, and the imaginary part of the right operand is subtracted from the imaginary part of the left operand.
multiply Multiplying two Complex numbers: The real part of the right operand is multiplied by the real part of the left operand, and the imaginary part of the right operand is multiplied by the imaginary part of the left operand.
toString For printing any Complex numbers, this function returns string representations of them. Consider using std::ostringstream for this function.
setComplexNumber Set the Complex numbers in the form (a , b ), where a is the real part and b is the imaginary part. This function is used to reset the numbers between each test case to the original.
This is what is given for it:
#include
// build your class and member functions here
int main() { for (double i = 1; i < 100; ++ i) { Complex a{i * 2, i + 2}; Complex b{i * 3, i + 3};
Complex c = a.add(b); // invoke add function and assign to object c std::cout << "Test case for Complex: add " << std::endl; std::cout << a.toString() << " + " << b.toString() << " = " << c.toString() << std::endl;
a.setComplexNumber(i * 2, i + 2); // reset realPart and b.setComplexNumber(i * 3, i + 3); // and imaginaryPart
std::cout << "Test case for Complex: subtract " << std::endl; c = a.subtract(b); // invoke subtract function and assign to object c std::cout << a.toString() << " - " << b.toString() << " = " << c.toString() << std::endl; std::cout << std::endl;
a.setComplexNumber(i * 2, i + 2); // reset realPart and b.setComplexNumber(i * 3, i + 3); // and imaginaryPart
std::cout << "Test case for Complex: multiply " << std::endl; c = a.multiply(b); // invoke multiply function and assign to object c std::cout << a.toString() << " * " << b.toString() << " = " << c.toString() << std::endl; std::cout << std::endl; }
}
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started