123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- // stonewt1.cpp -- Stonewt class methods + conversion functions
- #include <iostream>
- using std::cout;
- #include "stonewt1.h"
- // construct Stonewt object from double value
- Stonewt::Stonewt(double lbs)
- {
- stone = int (lbs) / Lbs_per_stn; // integer division
- pds_left = int (lbs) % Lbs_per_stn + lbs - int(lbs);
- pounds = lbs;
- }
- // construct Stonewt object from stone, double values
- Stonewt::Stonewt(int stn, double lbs)
- {
- stone = stn;
- pds_left = lbs;
- pounds = stn * Lbs_per_stn +lbs;
- }
- Stonewt::Stonewt() // default constructor, wt = 0
- {
- stone = pounds = pds_left = 0;
- }
- Stonewt::~Stonewt() // destructor
- {
- }
- // show weight in stones
- void Stonewt::show_stn() const
- {
- cout << stone << " stone, " << pds_left << " pounds\n";
- }
- // show weight in pounds
- void Stonewt::show_lbs() const
- {
- cout << pounds << " pounds\n";
- }
- // conversion functions
- Stonewt::operator int() const
- {
- return int (pounds + 0.5);
- }
- Stonewt::operator double()const
- {
- return pounds;
- }
|