Listing 3

//   Listing3.h: scaled multiply and divide
fixed_decimal& operator*=(fixed_decimal const& that)
{//  multiplication with rounding
     this->rep_ = scaled_multiplication(this->rep_, that.rep_, scale_);
     return *this;
}

fixed_decimal& operator/=(fixed_decimal const& that)
{//  division with rounding
     this->rep_ = rounded_division(this->rep_ * scale_, that.rep_);
     return *this;
}