Thứ Hai, 25 tháng 6, 2018

(C#) Bài tập 8: Áp dụng While: Thừa số nguyên tố, UCLN(a,b), BCNN(a,b)

Đề bài:
- Nhập số nguyên dương n. In ra các thừa số nguyên tố của n.
- Nhập vào 2 số nguyên dương a và b. In ra UCLN(a,b) và BCNN(a,b).
Source Code đề nghị:

using System;
namespace ThuaSoNguyenTo
{
    class ThuaSoNguyenTo
    {
        static void Main(string[] args)
        {
            int i, n;

            Console.WriteLine("THUA SO NGUYEN TO");
            Console.WriteLine("-----------------"); 
            // Vong lap do kiem tra nhap n
            do
            {
                Console.Write("Nhap so nguyen n: ");
                n = int.Parse(Console.ReadLine());
                if (n < 2)             
                    Console.WriteLine("Hay nhap n >=2. Nhap lai...\n");
            } while (n <2);
            
            Console.Write("Thua so Nguyen to cua " + n + " la: ");
            do
            {
                i = 2;
                while (n % i != 0 && i < n)
                    i++;
                Console.Write(i + "  ");
                n /= i;
            } while (n != 1);

            Console.WriteLine("\n\nUOC CHUNG LON NHAT- BOI CHUNG NHO NHAT");
            Console.WriteLine("--------------------------------------");
            int a, b;
            int ucln = 0, bcnn = 0;
           // Vong lap do kiem tra nhap a, b
            do
            {                                 
                    Console.Write("Nhap so nguyen thu 1: ");
                    a = int.Parse(Console.ReadLine());
                    Console.Write("Nhap so nguyen thu 2: ");
                    b = int.Parse(Console.ReadLine());
                    if (a <= 0 || b <= 0)
                        Console.WriteLine("Hay nhap a > 0 va b >0. Nhap lai...\n ");
            } while (a <= 0 || b <= 0);

                int a1 = a;
                int b1 = b;
                while (a != b)
                {
                    if (a > b)
                        a -= b;
                    else
                        b -= a;
                    ucln = a;
                }
                bcnn = (a1 * b1) / ucln;
                Console.WriteLine("UCLN (" + a1 + "," + b1 + ")= " + ucln);
                Console.WriteLine("BCNN (" + a1 + "," + b1 + ")= " + bcnn);

            Console.ReadKey();
        }
    }
}




(Có) Không có nhận xét nào cho bài viết này

Đăng nhận xét

Hãy nhập Nhận xét cho bài viết này vào khung bên dưới. Cảm ơn...