教えてください。固定小数クラスをでっちあげて、

class FixedPoint {
public:
FixedPoint(int integer, int fractional = 0) : i_(integer), f_(fractional) {}
FixedPoint operator*(const FixedPoint& fp) const {
const int tmp = (i_ * 100 + f_) * (fp.i_ * 100 + fp.f_);
return FixedPoint( tmp / 10000, (tmp % 10000) / 100 );
}
const int i_;
const int f_;
};

こんな感じの計算をすると

FixedPoint f(1, 50); // 1.50
FixedPoint h = f*f*f*f;
return h.i_;

(続く)