Exercise # 4
(: A different Approach
Code:
#include <iostream>
using namespace std;
int count=1;
struct dist
{
int feet;
int inches;
};
dist largedist(dist, dist);
dist correctdist(dist);
void display(dist);
void main()
{
dist a,b,larger;
cout<<"\nEnter Feet of First Distace: ";
cin>>a.feet;
cout<<"\nEnter Inches of First Distace: ";
cin>>a.inches;
cout<<"\nEnter Feet of 2nd Distace: ";
cin>>b.feet;
cout<<"\nEnter Inches of 2nd Distace: ";
cin>>b.inches;
if (a.inches>=12)
a=correctdist(a);
if(b.inches>=12)
b=correctdist(b);
larger=largedist(a,b);
cout<<"\nLarger distace = ";
display(larger);
}
dist largedist(dist a, dist b)
{
dist large={12,3};
if(a.feet>b.feet)
large=a;
else if (a.feet<b.feet)
large=b;
else if(a.feet==b.feet)
{
if(a.inches>b.inches)
large= a;
else if(a.inches<b.inches)
large = b;
}
return large;
}
dist correctdist(dist a)
{
dist correct;
correct.feet=a.feet+a.inches/12;
correct.inches=a.inches%12;
cout<<"\nNote: The Distance Value "<<a.feet<<"\""<<a.inches<<"\' is corrected to "<<correct.feet<<"\""<<correct.inches<<"\'\n";
return correct;
}
void display(dist a)
{
cout<<a.feet<<"\""<<a.inches<<"\'";
}