[C# Hướng đối tượng] nhập vào 2 phân số và tính tổng 2 phân số đó

0

Class phanso

using System;
using System.Collections.Generic;
using System.Text;

namespace phanso
{
    class Phanso
    {
        public int tuso { set; get; }
        public int mauso { set; get; }

        public void NhapPhanso()
        {
            Console.WriteLine("Tu so = ");
            this.tuso = int.Parse(Console.ReadLine());
            Console.WriteLine("mau so = ");
            do
                this.mauso = int.Parse(Console.ReadLine());
            while (this.mauso == 0);
        }
        public void InPhanso()
        {
            Console.Write("Phan so = " + tuso + "/" + mauso);
        }
        public Phanso congphanso(Phanso ph1, Phanso ph2)
        {
            Phanso ph3 = new Phanso();
            ph3.tuso = ph1.tuso * ph2.mauso + ph2.tuso * ph1.mauso;
            ph3.mauso = ph1.mauso * ph2.mauso;

            int uc = ucln(ph3.tuso, ph3.mauso);
            ph3.tuso = ph3.tuso / uc;
            ph3.mauso = ph3.mauso / uc;

            return ph3;

        }
        public int ucln(int a, int b)
        {
            int r = 1;
            while (r != 0)
            {
                r = a % b;
                a = b;
                b = r;
            }
            return a;
        }

    }
}

Class Program

using System;

namespace phanso
{
    class Program
    {
        static void Main(string[] args)
        {
            Phanso p1 = new Phanso();
            Phanso p2 = new Phanso();
            Phanso p3 = new Phanso();

            Console.WriteLine("Nhap phan so 1");
            p1.NhapPhanso();

            Console.WriteLine("Nhap phan so 2");
            p2.NhapPhanso();

            p3 = p3.congphanso(p1, p2);
            Console.WriteLine("tong 2 phan so la");
            p3.InPhanso();


            Console.ReadKey();

        }
    }
}

Kết quả

Leave A Reply

Your email address will not be published.