public class ArrayExample
public static void Main(string[] args)
PhanSo phanso1 = new PhanSo { TuSo = 10, MauSo = 4 };
PhanSo phanso2 = new PhanSo { TuSo = 3, MauSo = 7 };
Console.WriteLine("Phan so thu nhat = {0}", phanso1);
Console.WriteLine("Phan so thu hai = {0}", phanso2);
Console.WriteLine("******************************************************");
Console.WriteLine(" MENU");
Console.WriteLine(" 1. Tong");
Console.WriteLine(" 2. Hieu");
Console.WriteLine(" 3. Tich");
Console.WriteLine(" 4. Thuong");
Console.WriteLine(" 5. Cong phan so hien hanh voi mot so nguyen");
Console.WriteLine(" 6. Cong phan so hien hanh voi mot phan so khac");
Console.WriteLine(" 7. Rut gon phan so");
Console.WriteLine(" 8. So sanh 2 phan so");
Console.WriteLine(" 9. Thoat");
chon = Int32.Parse(Console.ReadLine());
Console.Write("Tong cua hai phan so : ");
Console.WriteLine(phanso1 + phanso2);
Console.Write("Hieu cua hai phan so :");
Console.WriteLine(phanso1 - phanso2);
Console.Write("Hieu cua hai phan so :");
Console.WriteLine(phanso1 * phanso2);
Console.Write("Hieu cua hai phan so :");
Console.WriteLine(phanso1 / phanso2);
Console.Write("Phan so hien hanh la: ");
Console.WriteLine(phanso1);
Console.Write("Nhap vao so nguyen a = ");
a = Int32.Parse(Console.ReadLine());
PhanSo phanso3 = new PhanSo { TuSo=a};
Console.Write("Tong cua so phan so hien hanh va so nguyen a = " + a + " la: ");
Console.WriteLine(phanso1 + phanso3);
Console.Write("Phan so hien hanh la: {0} ", phanso1);
Console.WriteLine("Nhap mot phan so:");
Console.Write("Nhap vao tu so: ");
a = Int32.Parse(Console.ReadLine());
Console.Write("Nhap vao mau so: ");
b = Int32.Parse(Console.ReadLine());
PhanSo psk = new PhanSo { TuSo =a , MauSo = b };
Console.Write("Tong cua phan so hien hanh voi phan so " + a + "/" + b + " la:");
Console.WriteLine(phanso1 + psk);
Console.Write("Phan so can rut gon: ");
Console.WriteLine(phanso1);
Console.Write("Phan so sau khi rut gon: ");
Console.WriteLine(phanso1);
if(phanso1.SoSanh(phanso2))
Console.WriteLine("phan so" + phanso1+ " lon hon phan so " + phanso2);
Console.WriteLine("phan so" + phanso1 + " nho hon phan so " + phanso2);
private int _TuSo, _MauSo;
Exception MauBangKhong = new Exception("Mau phai khac 0");
public static PhanSo operator +(PhanSo a, PhanSo b)
c.MauSo = a.MauSo * b.MauSo;
c.TuSo = a.TuSo * b.MauSo + b.TuSo * a.MauSo;
public static PhanSo operator -(PhanSo a, PhanSo b)
c.MauSo = a.MauSo * b.MauSo;
c.TuSo = a.TuSo * b.MauSo - b.TuSo * a.MauSo;
public static PhanSo operator *(PhanSo a, PhanSo b)
c.MauSo = a.MauSo * b.MauSo;
c.TuSo = a.TuSo * b.TuSo;
public static PhanSo operator /(PhanSo a, PhanSo b)
Exception ThuongBangKhong = new Exception("Thuong phai khac 0");
c.TuSo = a.TuSo * b.MauSo;
c.MauSo = a.MauSo * b.TuSo;
return Convert.ToDouble(this.TuSo) / Convert.ToDouble(this.MauSo);
public override string ToString()
return Convert.ToString(this.TuSo) + "/" + Convert.ToString(this.MauSo);
public bool SoSanh(PhanSo a)