Search This Blog
Welcome to 1printf(), your ultimate destination for C, C++, Linux, Data Structures, and Microcontroller programming! ๐ ๐นLearn advanced coding techniques in C& C++ ๐นMaster Linux internals & shell scripting ๐นDeep dive into Data Structures & Algorithms ๐นExplore Embedded Systems & Microcontrollers (8051,UART, RTOS) ๐นGet hands-on coding tutorials, project ideas,and interview preparation tips Whether you're a beginner or an experienced programmer, this channel will help you
Featured
- Get link
- X
- Other Apps
C++ Program for Complex Numbers Using Operator Overloading
✅ C++ Program for Complex Number Operations Using Operator Overloading
#include <iostream>
#include <cmath>
using namespace std;
class complex
{
public:
float real, image;
complex()
{
real = 0;
image = 0;
}
void input()
{
cout << "Enter real part: ";
cin >> real;
cout << "Enter imaginary part: ";
cin >> image;
}
complex operator+(complex &obj)
{
complex temp;
temp.real = real + obj.real;
temp.image = image + obj.image;
return temp;
}
complex operator-(complex &obj)
{
complex temp;
temp.real = real - obj.real;
temp.image = image - obj.image;
return temp;
}
complex operator*(complex &obj)
{
complex temp;
temp.real = (real * obj.real) - (image * obj.image);
temp.image = (real * obj.image) + (image * obj.real);
return temp;
}
complex operator/(complex &obj)
{
complex temp;
float denom = (obj.real * obj.real) + (obj.image * obj.image);
temp.real = (real * obj.real + image * obj.image) / denom;
temp.image = (image * obj.real - real * obj.image) / denom;
return temp;
}
complex conjugate()
{
complex temp;
temp.real = real;
temp.image = -image;
return temp;
}
float modulus()
{
return sqrt((real * real) + (image * image));
}
void display()
{
cout << real << " + " << image << "i" << endl;
}
};
int main()
{
complex c1, c2, c3;
cout << "Enter first complex number:\n";
c1.input();
cout << "\nEnter second complex number:\n";
c2.input();
c3 = c1 + c2;
cout << "Addition:\n";
c3.display();
c3 = c1 - c2;
cout << "Subtraction:\n";
c3.display();
c3 = c1 * c2;
cout << "Multiplication:\n";
c3.display();
c3 = c1 / c2;
cout << "Division:\n";
c3.display();
c3 = c1.conjugate();
cout << "Conjugate:\n";
c3.display();
cout << "Modulus:\n";
cout << c1.modulus() << endl;
return 0;
}
๐ Explanation:
This program demonstrates operator overloading in C++ for performing arithmetic operations on complex numbers. Each operator is overloaded using mathematical formulas.
- + → Adds two complex numbers
- - → Subtracts two complex numbers
- * → Multiplies two complex numbers
- / → Divides two complex numbers
- Conjugate → Changes sign of imaginary part
- Modulus → Calculates magnitude
๐ Mathematical Formulas Used:
Let z₁ = a + bi
z₂ = c + di
Addition :(a+bi)+(c+di)=(a+c)+(b+d)i
Subtraction :(a+bi)−(c+di)=(a−c)+(b−d)i
Multiplication : (a+bi)(c+di)=(ac−bd)+(ad+bc)i
Division :a+bi/c+di=(ac+bd)+(bc-ad)i/c^2+d^2
Conjugate : a − bi
Modulus : √(a² + b²)
๐งพ Sample Output:
Enter real part: 4 Enter imaginary part: 5 Enter real part: 2 Enter imaginary part: 3 Addition: 6 + 8i Subtraction: 2 + 2i Multiplication: -7 + 22i Division: 1.77 + -0.15i Conjugate: 4 + -5i Modulus: 6.40
๐ Keywords:
C++ complex number program, operator overloading, complex arithmetic, C++ OOP example, complex class in C++
๐ Hashtags:
#CPlusPlus #OperatorOverloading #ComplexNumbers #OOP #CPPBasics #Programming #1printf
๐ Search Description:
Learn how to perform complex number operations in C++ using operator overloading. Includes formulas, explanation, sample output, and dark-themed code.
Popular Posts
C++ Program for Hybrid Inheritance (All Types Together)
- Get link
- X
- Other Apps
C++ Program for Function Overloading Example
- Get link
- X
- Other Apps
Comments
Post a Comment