struct ComFraction
{
int numerator; //чисельник
int denominator; //знаменник
};
struct MixedFraction
{
int number; //ціла частина
int numerator; //чисельник
int denominator; //знаменник
};
MixedFraction GetIntFraction(ComFraction d)
{
MixedFraction mf;
// Виділяємо цілу частину
mf.number = d.numerator / d.denominator;
// Залишок від ділення - новий чисельник
mf.numerator = d.numerator % d.denominator;
// Знаменник залишається без змін
mf.denominator = d.denominator;
// Скорочуємо дробову частину
ComFraction frac;
frac.numerator = mf.numerator;
frac.denominator = mf.denominator;
frac = ReduceFraction(frac);
mf.numerator = frac.numerator;
mf.denominator = frac.denominator;
return mf;
}
|