public Rational(long numerator, long denominator) { var gcd = EulerMath.GCD(numerator, denominator); var denominatorNegativeFactor = denominator > 0 ? 1 : -1; Numerator = denominatorNegativeFactor * numerator / gcd; Denominator = denominatorNegativeFactor * denominator / gcd; }
public RationalBigInteger(BigInteger numerator, BigInteger denominator) { var gcd = EulerMath.GCD(numerator, denominator); var denominatorNegativeFactor = denominator > 0 ? 1 : -1; Numerator = denominatorNegativeFactor * numerator / gcd; Denominator = denominatorNegativeFactor * denominator / gcd; }