Example: Add Distances Using Structures
#include <iostream>
using namespace std;
struct Distance {
int feet;
float inch;
}d1 , d2, sum;
int main() {
cout << "Enter 1st distance," << endl;
cout << "Enter feet: ";
cin >> d1.feet;
cout << "Enter inch: ";
cin >> d1.inch;
cout << "\nEnter information for 2nd distance" << endl;
cout << "Enter feet: ";
cin >> d2.feet;
cout << "Enter inch: ";
cin >> d2.inch;
sum.feet = d1.feet+d2.feet;
sum.inch = d1.inch+d2.inch;
// changing to feet if inch is greater than 12
if(sum.inch > 12) {
// extra feet
int extra = sum.inch / 12;
sum.feet += extra;
sum.inch -= (extra * 12);
}
cout << endl << "Sum of distances = " << sum.feet << " feet " << sum.inch << " inches";
return 0;
}
Output
Enter 1st distance, Enter feet: 6 Enter inch: 3.4 Enter information for 2nd distance Enter feet: 5 Enter inch: 10.2 Sum of distances = 12 feet 1.6 inches
In this program, a structure Distance
containing two data members (inch and feet) is declared to store the distance in the inch-feet system.
Here, two structure variables d1 and d2 are created to store the distance entered by the user. And, the sum variable stores the sum of the distances.
The if
statement is used to convert inches to feet if the value of inch of sum variable is greater than 12
:
- The
int
variable extra stores the extra feet gained due to the value of inch being greater than12
. This is obtained from the quotient of division between sum.inch and12
. - We then add the extra feet to sum.feet.
- The true value of sum.inch is then calculated by subtracting
extra * 12
from its initial value.
Also Read: