/** * My own big Rational class, */ import java.math.*; public class Rational { private BigInteger numerator=0; private BigInteger denominator=1; /* constructors */ Rational(BigInteger n, BigInteger d) { numerator=n; denominator=d; } Rational(double n) { numerator=(BigInteger)n; denominator=1; } Rational(int n) { numerator=(BigInteger)n; denominator=1; } Rational(BigInteger n) { numerator=n; denominator=1; } public Rational reduce() { BigInteger c = numerator.gcd(denominator); numerator.divide(c); denominator.divide(c); } public bool isGreaterThan(Rational r) { return((r.numerator*denominator -r.denominator*numerator)>0.0); } public Rational prod(Rational r) { numerator = numerator*r.numerator; denominator = denominator* r.denominator; return this; } }