public void Add(Rational r)
this.num = this.num * r.denum + r.num * this.denum;
this.denum = this.denum*r.denum;
public void Sub(Rational r)
this.num = this.num * r.denum - r.num * this.denum;
this.denum = this.denum*r.denum;
public void Mult(Rational r)
this.num = this.num * r.num ;
this.denum = this.denum*r.denum;
public void Div(Rational r)
this.num = this.num * r.denum ;
this.denum = this.denum*r.num;
public int Compare(Rational r)
if (this.num*r.denum > r.num*this.denum)
if (this.num*r.denum < r.num*this.denum)
return this.dec = (double)this.num/ this.denum;
public void Print(Rational r)
this.dec = (double)this.num/ this.denum;
Console.WriteLine(this.dec);
public Rational(int n, int d)
public Rational(Rational r)
this.num = r.num; this.denum = r.denum;
public static void Main()
int xnum, xdenum, ynum, ydenum;
Console.Write("xnum = "); xnum = int.Parse(Console.ReadLine());
Console.Write("xdenum = "); xdenum = int.Parse(Console.ReadLine());
Console.Write("ynum = "); ynum = int.Parse(Console.ReadLine());
Console.Write("ydenum = "); ydenum = int.Parse(Console.ReadLine());
Rational x = new Rational(xnum, xdenum);
Rational y = new Rational(ynum, ydenum);
Rational a =new Rational(x); a.Add(y); a.Print(a);
Rational m = new Rational(x); m.Add(y); m.Print(m);
Rational d = new Rational(x); d.Add(y); d.Print(d);
if (c==1) Console.WriteLine("x > y");
else if (c== -1) Console.WriteLine("x < y");
else Console.WriteLine("x = y");