Example:19
Declare a class named “distance” with attributes as hh, mm, ss. Take input for two objects calculate and print their sum using overloaded binary operator “+” with friend function.
//Add two time objects
//using "+" overloaded operator
//using friend function
#include<iostream>
#include<conio.h>
using namespace std;
class time
{
private:
int h,m,s;
public:
void read();
void show();
friend time operator+(time t1,time t2);
};
void time::read()
{
cout<<"enter h,m and s ";
cin>>h>>m>>s;
}
void time::show()
{
cout<<h<<" : "<<m<<" : "<<s<<endl;
}
time operator+(time t1,time t2)
{
time t;
t.h=t1.h+t2.h;
t.m=t1.m+t2.m;
t.s=t1.s+t2.s;
if(t.s>=60)
{
t.m=t.m+t.s/60;
t.s=t.s%60;
}
if(t.m>=60)
{
t.h=t.h+t.m/60;
t.m=t.m%60;
}
return(t);
}
int main()
{
time e1,e2,e3;
e1.read();e2.read();
e1.show();e2.show();
e3=e1+e2;//e3=operator+(e1,e2);
e3.show();
getch();
return(0);
}
Output:
enter h,m and s 2 5 36
enter h,m and s 4 25 12
2 : 5 : 36
4 : 25 : 12
6 : 30 : 48
Example:20
Declare a class named “complex” with attributes as real and img. Take input for two objects calculate and print their sum using overloaded binary operator “+”.
//to add two comples numbers
//using overloaded operator "+"
#include<iostream>
#include<conio.h>
using namespace std;
class complex
{
private:
int real,img;
public:
void read();
void show();
complex operator+(complex c);
};
void complex::read()
{
cout<<"Enter values of real and img ";
cin>>real>>img;
}
void complex::show()
{
if(img>=0)
cout<<real<<" +i "<<img<<endl;
else
cout<<real<<" -i "<<img*-1<<endl;
}
complex complex::operator+(complex c1)
{
complex t;
t.real=real+c1.real;
t.img=img+c1.img;
return(t);
}
int main()
{
complex e1,e2,e3;
e1.read();e2.read();
e1.show();e2.show();
e3=e1+e2;//e3=e1.operator+(e2);
e3.show();
getch();
return(0);
}
Output:
Enter values of real and img 10 25
Enter values of real and img 3 6
10 +i 25
3 +i 6
13 +i 31
Example:21
Declare a class named “complex” with attributes as real and img. Take input for two objects calculate and print their sum using overloaded binary operator “+” with friend function.
//to add two comples numbers
//using overloaded operator "+"
//Using friend function
#include<iostream>
#include<conio.h>
using namespace std;
class complex
{
private:
int real,img;
public:
void read();
void show();
friend complex operator+(complex c1,complex c2);
};
void complex::read()
{
cout<<"Enter values of real and img ";
cin>>real>>img;
}
void complex::show()
{
if(img>=0)
cout<<real<<" +i "<<img<<endl;
else
cout<<real<<" -i "<<img*-1<<endl;
}
complex operator+(complex c1,complex c2)
{
complex t;
t.real=c1.real+c2.real;
t.img=c1.img+c2.img;
return(t);
}
int main()
{
complex e1,e2,e3;
e1.read();e2.read();
e1.show();e2.show();
e3=e1+e2;//e3=operator+(e1,e2);
e3.show();
getch();
return(0);
}
Output:
Enter values of real and img 25 9
Enter values of real and img 3 -5
25 +i 9
3 -i 5
28 +i 4




