-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathassignment-21.cpp
More file actions
89 lines (89 loc) · 1.46 KB
/
Copy pathassignment-21.cpp
File metadata and controls
89 lines (89 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
using namespace std;
class fraction
{
public:
int a,b;
public:
fraction(int x=0,int y=0){
a=x;
b=y;
}
void display()
{
cout<<a<<"/"<<b<<endl;
}
fraction operator +(fraction f){
fraction r;
r.a=(a*f.b)+(b*f.a);
r.b=b*f.b;
return(r);
}
fraction operator -(fraction f){
fraction r;
r.a=(a*f.b)-(b*f.a);
r.b=b*f.b;
return(r);
}
fraction operator *(fraction f){
fraction r;
r.a=a*f.a;
r.b=b*f.b;
return(r);
}
fraction operator /(fraction f){
fraction r;
r.a=a*f.b;
r.b=b*f.a;
return(r);
}
fraction operator ++(){
a+=b;
return *this;
}
fraction operator ++(int){
fraction temp(*this);
++*this;
return temp;
}
fraction operator --(){\
a-=b;
return *this;
}
fraction operator --(int){
fraction temp(*this);
--*this;
return temp;
}
};
int main()
{
fraction f1(2,3);
fraction f2(1,4);
fraction f3;
cout<<"addition=";
f3=f1+f2;
f3.display();
cout<<"subtraction=";
f3=f1-f2;
f3.display();
cout<<"multiplication=";
f3=f1*f2;
f3.display();
cout<<"division=";
f3=f1/f2;
f3.display();
cout<<"pre increment=";
f3=++f1;
f3.display();
cout<<"post increment=";
f3=f2++;
f3.display();
cout<<"pre decrement=";
f3=--f1;
f3.display();
cout<<"post decrement=";
f3=f2--;
f3.display();
return 0;
}