ify"> {(! gen)
{_Prost ();=true;
}=false; (hi, lo);
} CD :: Set (int hi, int lo)
{= false; (lo == 0)
{_hi=0; _lo=1; false;
} _hi=hi; (m_hi == 0) m_lo=1;
{_lo=lo; ();
} true;
} CD :: Set (double d)
{= true; _d=d; true;
} CD :: Set (AnsiString d)
{pos=0; (pos=d.LastDelimiter ("/"))
{_hi=StrToIntDef (d.SubString (1, pos - 1), 0); _lo=StrToIntDef (d.SubString (pos + 1, d.Length ()), 1); ( m_hi, m_lo);
} if (pos=d.LastDelimiter (".))
{(StrToFloat (d));
}
{_hi=StrToIntDef (d, 0); (m_hi, 1);
} ();
/ / / / ShowMessage («m_hi =» + AnsiString (m_hi) + « nm_lo =» + m_lo); true;
} CD :: SetInv (AnsiString d)
{pos=0; (pos=d.LastDelimiter ("/"))
{_hi=- StrToIntDef (d.SubString (1, pos - 1), 0); _lo=StrToIntDef (d.SubString (pos + 1, d.Length ()), 1); (m_hi, m_lo);
} if (pos=d.LastDelimiter (".))
{(- StrToFloat (d));
}
{_hi=- StrToIntDef (d, 0); (m_hi, 1);
}
/ / / / ShowMessage («m_hi =» + AnsiString (m_hi) + « nm_lo =» + m_lo); true;
} CD :: get_d () / / повертає Десяткова Значення
{(overflow) return m_d; (m_hi) return float (m_hi) / m_lo; return 0;
} CD :: get_a ()
{(overflow) return FloatToStrF (m_d, ffGeneral, 7, 0); (m_lo == 1) return AnsiString (m_hi); return AnsiString (m_hi) + «/» + AnsiString (m_lo);
} CD :: get_s ()
{(overflow)
{(m_d>=0) return AnsiString («+») + FloatToStrF (m_d, ffGeneral, 7, 0); return AnsiString («-») + FloatToStrF (-m_d, ffGeneral, 7, 0);
} (m_lo == 1) return (m_hi <0)? AnsiString («-») + abs (m_hi): « + » + AnsiString (m_hi); return ((m_hi <0)? AnsiString («-») + abs (m_hi): «+» + AnsiString (m_hi)) +" /" + AnsiString (m_lo);
} CD :: get_dr ()
{cd; (overflow)
{. Set (m_d - floor (m_d)); cd;
} _t r;=ldiv (m_hi, m_lo); (r.rem>=0)
{. Set (r.rem, m_lo);
}
{. Set (m_lo + r.rem, m_lo);
} cd;
} CD :: get_cel ()
{cd; (overflow)
{= floor (m_d); cd;
} (m_hi>=0)=ldiv (m_hi, m_lo). quot;=ldiv (m_hi, m_lo). quot - 1; cd;
} CD :: get_abs ()
{cd; (overflow)
{(m_d>=0) cd.Set (m_d); cd.Set (- m_d); cd;
} (m_hi <0) cd.Set (- m_hi, m_lo); cd.Set (m_hi, m_lo); cd;
} CD :: operator + (CD d)
{cd; (overflow | | d.overflow)
{. Set (get_d () + d.get_d ()); cd...