// Мой метод Equals public bool Equals(Fractions that) { Fractions a = this.Reduce(); Fractions b = that.Reduce(); return(a.numerator == b.numerator && a.denominator == b.denominator && a.sign == b.sign); }
// Метод сравнения двух дробей // Возвращает 0, если дроби равны // 1, если this больше that // -1, если this меньше that private int CompareTo(Fractions that) { if (this.Equals(that)) { return(0); } Fractions a = this.Reduce(); Fractions b = that.Reduce(); if (a.numerator * a.sign * b.denominator > b.numerator * b.sign * a.denominator) { return(1); } return(-1); }