public String toString() {
        IntFraction f = simp(this);
        
        if (f.d == 0)
            return "Error: Denominator is zero.";
        else if (f.n == 0)
            return "0";
        else if (f.d == 1)
            return String.valueOf((negative?"-":"") + f.n);
        else if (f.n < f.d)
            return (negative?"-":"") + f.n + "/" + f.d;
        else
            return (negative?"-":"") + f.n/f.d + "_" + f.n%f.d + "/" + f.d;
    }