Kiểm tra số hoàn hảo trong C#



Bài tập C#: Kiểm tra số hoàn hảo

Yêu cầu bài tập C# này là nhập một số từ bàn phím, kiểm tra xem số đó có phải là số hoàn hảo hay không và đưa ra thông báo tương ứng. Số hoàn hảo là số có tổng các ước số dương (ngoại trừ chính số đó) bằng chính số đó.

Ví dụ:
6 có các ước số ngoại trừ chính nó là 1, 2, 3 và có tổng các ước là 1 + 2 + 3 = 6
--> 6 là số hoàn hảo

Đây là bài tập C# cơ bản minh họa giúp bạn cách sử dụng kết hợp vòng lặp FOR và lệnh IF trong C#.

Chương trình C#

Dưới đây là chương trình C# để giải bài tập kiểm tra số hoàn hảo trong C#:

using System;namespace VietJackCsharp
{
    class TestCsharp
    {
        public static void Main()
        {            int n, i, sum;            Console.Write("\n");
            Console.Write("Kiem tra so hoan hoa trong C#:\n");
            Console.Write("------------------------------");
            Console.Write("\n\n");            Console.Write("Nhap mot so bat ky: ");
            n = Convert.ToInt32(Console.ReadLine());
            sum = 0;
            Console.Write("Cac uoc so duong cua so da cho: ");
            for (i = 1; i < n; i++)
            {
                if (n % i == 0)
                {
                    sum = sum + i;
                    Console.Write("{0}  ", i);
                }
            }
            Console.Write("\nTong cua cac uoc so: {0}", sum);
            if (sum == n)
                Console.Write("\nSo da cho la so hoan hao.");
            else
                Console.Write("\nSo da cho khong phai la so hoan hao.");
            Console.Write("\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ả:

Kiểm tra số hoàn hảo trong C#
bai-tap-vong-lap-trong-csharp.jsp