Bài tập vòng lặp trong C# (Phần 8)



Yêu cầu Bài tập C#

Viết chương trình C# để nhập một số và kiểm tra xem số đó có thể biểu diễn bằng tổng của hai số nguyên tố không. Ví dụ:

Số 16 = 5 + 11 = 3 + 13

Đây là bài tập C# khá phức tạp yêu cầu bạn phải tập trung suy nghĩ và sử dụng kết hợp lồng vòng lặp và các lệnh IF ELSE trong C# một cách khéo léo.

Chương trình C#

Dưới đây là chương trình C# để giải bài tập kiểm tra xem một số có thể biểu diễn bằng tổng của hai số nguyên tố trong C#:

using System;namespace VietJackCsharp
{
    class TestCsharp
    {
        public static void Main()
        {            int n, i, flg1 = 1, flg2 = 1, flg3 = 0, j;            Console.Write("\n");
            Console.Write("Chuong trinh C# de kiem tra xem mot so co the bieu dien bang\n");
            Console.Write("          tong cua hai so nguyen to khong:\n");
            Console.Write("---------------------------------------------");
            Console.Write("\n\n");
            Console.Write("Nhap mot so duong: ");
            n = Convert.ToInt32(Console.ReadLine());
            for (i = 3; i <= n / 2; i++)
            {
                /*---------- Kiem tra so nguyen to---------------*/
                flg1 = 1;
                flg2 = 1;
                for (j = 2; j < i; j++)
                {
                    if (i % j == 0)
                    { flg1 = 0; j = i; }
                }
                for (j = 2; j < n - i; j++)
                {
                    if ((n - i) % j == 0)
                    { flg2 = 0; j = n - i; }
                }
                if (flg1 == 1 && flg2 == 1)
                {
                    Console.Write("{0} =  {1} + {2}  \n", n, i, n - i);
                    flg3 = 1;
                }
            }
            if (flg3 == 0)
            { 
                Console.Write("\nSo {0} khong the bieu dien bang tong cua hai so nguyen to.\n\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ả:

Bài tập vòng lặp trong C# (Phần 8)
bai-tap-vong-lap-trong-csharp.jsp