Tìm Strong Number trong C#



Bài tập C#: Tìm Strong Number

Viết chương trình C# để tìm Strong Number trong một dãy đã cho. Strong Number là số có tổng giai thừa của các chữ số bằng chính số ban đầu. Ví dụ:

Số 145 có 1! + 4! + 5! = 1 + 24 + 120 = 145
--> 145 là Strong Number

Bài tập C# này minh họa giúp bạn cách lồng vòng lặp trong C#.

Chương trình C#

Dưới đây là chương trình C# để giải bài tập tìm Strong Number trong C#:

using System;namespace VietJackCsharp
{
    class TestCsharp
    {
        public static void Main()
        {            int i, n1, s1 = 0, j, k, en, sn;
            int fact;            Console.Write("\n");
            Console.Write("Tim Strong Number trong C#:\n");
            Console.Write("--------------------------");
            Console.Write("\n\n");            Console.Write("Nhap so bat dau cua day: ");
            sn = Convert.ToInt32(Console.ReadLine());
            Console.Write("Nhap so ket thuc cua day: ");
            en = Convert.ToInt32(Console.ReadLine());
            Console.Write("\n\nCac Strong Number la:\n");            for (k = sn; k <= en; k++)
            {
                n1 = k;
                s1 = 0;                for (j = k; j > 0; j = j / 10)
                {                    fact = 1;
                    for (i = 1; i <= j % 10; i++)
                    {
                        fact = fact * i;
                    }
                    s1 = s1 + fact;
                }                if (s1 == n1)                    Console.Write("{0}  ", n1);
            }
            Console.Write("\n\n");              Console.ReadKey();
        } 
    }
}

Nếu bạn không sử dụng lệnh Console.ReadKey(); thì chương trình sẽ chạy và kết thúc luôn (nhanh quá đến nỗi bạn không kịp nhìn kết quả). Lệnh này cho phép chúng ta nhìn kết quả một cách rõ ràng hơn.

Kết quả chương trình C#

Biên dịch và chạy chương trình C# trên sẽ cho kết quả:

Tìm Strong Number trong C#
bai-tap-vong-lap-trong-csharp.jsp