("r8: (r3+r4)"); r9.PrintRational("r9: (r5+r6)"); r10.PrintRational ("r10: (r1+r2)"); r11.PrintRational("r11: (r3+r4)"); r12.PrintRational("r12: (r5+r6+r10+r11)"); } Обратите внимание на вычисление r12: здесь ощутимо видно преимущество операций, позволяющих записывать сложные выражения в простой форме. Результаты вычислений показаны на рис. 16.4. Аналогичным образом определим остальные операции над рациональными числами: public Rational Minus(Rational a) { int u,v; u = m*a.n - n*a.m; v= n*a.n; return( new Rational(u, v)); }//Minus public static Rational operator -(Rational r1, Rational r2) { return (r1.Minus(r2)); } public Rational Mult(Rational a) { |