-
Notifications
You must be signed in to change notification settings - Fork 0
/
Exercise 4b.cpp
63 lines (58 loc) · 1.09 KB
/
Exercise 4b.cpp
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
// Binary operator overloading
#include <iostream.h> #include <conio.h>
class Distance
{
private:
int feet;
float inches;
public:
Distance(): feet(0), inches(0.0)
{
}
Distance(int ft, float in):
feet(ft), inches(in)
{
}
void getdist()
{
cout << "\nEnter feet: ";
cin >> feet; cout << "Enter inches: ";
cin >> inches;
}
void showdist()
const
{
cout << feet << "\'-" << inches << "\"";
}
Distance operator + ( Distance ) const;
};
Distance Distance::operator + (Distance d2) const
{
int f = feet + d2.feet;
float i = inches + d2.inches;
if(i >= 12.0)
{
i -= 12.0;
f++;
}
return Distance(f,i);
}
int main()
{
Distance dist1, dist3, dist4;
clrscr();
dist1.getdist();
Distance dist2(11, 6.25);
dist3 = dist1 + dist2;
dist4 = dist1 + dist2 + dist3;
cout << "\n dist1 = ";
dist1.showdist();
cout << "\n dist2 = ";
dist2.showdist();
cout << "\n dist3 = ";
dist3.showdist();
cout << "\n dist4 = ";
dist4.showdist();
getch();
return 0;
}