Write a C++ Program to Add Complex Numbers by Passing Structure to a Function

C++ Program to Add Complex Numbers by Passing Structure to a Function

Welcome to the World of Online Learning:

Hello Friends “This blog helps you to learn C++ programming concepts. You can learn C++ language at your own speed and time. One can learn concepts of C++ language by practicing various programs given on various pages of this blog. Enjoy the power of Self-learning using the Internet.”

C++ Program to Add Complex Numbers by Passing Structure to a Function
C++ Program to Add Complex Numbers by Passing Structure to a Function

Write a C++ Program to Add Complex Numbers by Passing Structure to a Function

PROGRAM:C++ Program to Add Complex Numbers by Passing Structure to a Function

/* C++ Program to Add Complex Numbers by Passing Structure to a Function */

// Complex numbers are entered by the user

#include <iostream>
using namespace std;

typedef struct complex {
float real;
float imag;
} complexNumber;

complexNumber addComplexNumbers(complex, complex);

int main() {
complexNumber num1, num2, complexSum;
char signOfImag;

cout << “For 1st complex number,” << endl;
cout << “Enter real and imaginary parts respectively:” << endl;
cin >> num1.real >> num1.imag;

cout << endl
<< “For 2nd complex number,” << endl;
cout << “Enter real and imaginary parts respectively:” << endl;
cin >> num2.real >> num2.imag;

// Call add function and store result in complexSum
complexSum = addComplexNumbers(num1, num2);

// Use Ternary Operator to check the sign of the imaginary number
signOfImag = (complexSum.imag > 0) ? ‘+’ : ‘-‘;

// Use Ternary Operator to adjust the sign of the imaginary number
complexSum.imag = (complexSum.imag > 0) ? complexSum.imag : -complexSum.imag;

cout << “Sum = ” << complexSum.real << signOfImag << complexSum.imag << “i”;

return 0;
}

complexNumber addComplexNumbers(complex num1, complex num2) {
complex temp;
temp.real = num1.real + num2.real;
temp.imag = num1.imag + num2.imag;
return (temp);
}

Leave a Reply

Your email address will not be published. Required fields are marked *