Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstdlib>
- #include <cmath>
- using namespace std;
- class Complex{
- double real;
- double img;
- public:
- Complex();
- Complex(double, double);
- void input();
- Complex add(Complex, Complex);
- Complex add(Complex, Complex, Complex);
- Complex subtract(Complex, Complex);
- Complex subtract(Complex, Complex, Complex);
- Complex multiply(Complex,Complex);
- Complex multiply(Complex,Complex, Complex);
- Complex divide(Complex, Complex);
- Complex divide(Complex, Complex, Complex);
- void display();
- ~Complex();
- };
- Complex::~Complex(){
- }
- Complex::Complex(){
- real = 0.0;
- img = 0.0;
- }
- Complex::Complex(double real, double img){
- this->real = real;
- this->img = img;
- }
- void Complex::input(){
- cout << "Enter the real part: ";
- cin >> real;
- cout << "Enter the imaginary part: ";
- cin >> img;
- }
- Complex Complex::add(Complex num1, Complex num2){
- Complex result;
- result.real = num1.real + num2.real;
- result.img = num1.img + num2.img;
- return result;
- }
- Complex Complex::add(Complex num1, Complex num2, Complex num3){
- return add(add(num1, num2), num3);
- }
- Complex Complex::subtract(Complex num1, Complex num2){
- Complex result;
- result.real = num1.real - num2.real;
- result.img = num1.img - num2.img;
- return result;
- }
- Complex Complex::subtract(Complex num1, Complex num2, Complex num3){
- return subtract(subtract(num1, num2), num3);
- }
- Complex Complex::multiply(Complex num1, Complex num2){
- Complex result;
- result.real = (num1.real * num2.real) - (num1.img * num2.img);
- result.img = (num1.real * num2.img) + (num2.real * num1.img);
- return result;
- }
- Complex Complex::multiply(Complex num1, Complex num2, Complex num3){
- return multiply(multiply(num1, num2), num3);
- }
- Complex Complex::divide(Complex num1, Complex num2){
- Complex result;
- result.real = ((num1.real * num2.real) + (num1.img * num2.img))
- /(pow(num2.real, 2) - pow(num2.img, 2));
- result.img = ((num2.real * num1.img) - (num1.real * num2.img))
- /(pow(num2.real, 2) - pow(num2.img, 2));
- return result;
- }
- Complex Complex::divide(Complex num1, Complex num2, Complex num3){
- return divide(divide(num1, num2), num3);
- }
- void Complex::display(){
- cout << real << " + i" << img << endl;
- }
- int main() {
- system("cls");
- cout << "For complex number 1" << endl;
- Complex num1;double real, img;
- num1.input();
- cout << "For complex number 2" << endl;
- cout << "Enter the real part: ";
- cin >> real;
- cout << "Enter the imaginary part: ";
- cin >> img;
- Complex num2(real, img);
- Complex sum = num1.add(num1, num2);
- Complex diff = num1.subtract(num1, num2);
- Complex prod = num1.multiply(num1, num2);
- Complex quot = num1.divide(num1, num2);
- cout << "Sum" << endl;
- sum.display();
- cout << "Product" << endl;
- prod.display();
- cout << "Difference" << endl;
- diff.display();
- cout << "Division" << endl;
- quot.display();
- cin.ignore();
- cin.get();
- return 0;
- }
Add Comment
Please, Sign In to add comment