InvertInplace() { ComplexPolynomial temp = _denominator; _denominator = _numerator; _numerator = temp; }
ComplexRational( Complex[] numeratorCoefficients, Complex[] denominatorCoefficients) { _numerator = new ComplexPolynomial(numeratorCoefficients); _denominator = new ComplexPolynomial(denominatorCoefficients); }
ComplexRational( int numeratorOrder, int denominatorOrder) { _numerator = new ComplexPolynomial(numeratorOrder); _denominator = new ComplexPolynomial(denominatorOrder); }
ComplexRational( ComplexPolynomial numerator, ComplexPolynomial denominator) { _numerator = numerator.Clone(); _denominator = denominator.Clone(); }
Subtract(ComplexRational rational) { if (_denominator.Equals(rational._denominator)) { return(new ComplexRational( _numerator - rational._numerator, _denominator.Clone())); } ComplexPolynomial num = (_numerator * rational._denominator) - (rational._numerator * _denominator); ComplexPolynomial denom = _denominator * rational._denominator; return(new ComplexRational(num, denom)); }
ComplexRational(ComplexRational copy) { _numerator = new ComplexPolynomial(copy._numerator); _denominator = new ComplexPolynomial(copy._denominator); }
Divide(ComplexPolynomial polynomial) { return(new ComplexRational( _numerator.Clone(), _denominator * polynomial)); }
Multiply(ComplexPolynomial polynomial) { return(new ComplexRational( _numerator * polynomial, _denominator.Clone())); }
SubtractInplace(ComplexPolynomial polynomial) { _numerator.SubtractInplace(_denominator * polynomial); }
AddInplace(ComplexPolynomial polynomial) { _numerator.AddInplace(_denominator * polynomial); }