In các phần tử duy nhất của mảng trong C#



Bài tập C#: In các phần tử duy nhất của mảng

Viết chương trình C# để nhập các phần tử vào trong một mảng, sau đó in các phần tử là duy nhất trong mảng trên màn hình hiển thị (các phần tử là duy nhất nếu không có phần tử khác giống nó).

Bài tập C# này giúp bạn làm quen với các khái niệm: khai báo mảng, khởi tạo mảng, và cách truy cập các phần tử của mảng trong C#.

Chương trình C#

Dưới đây là chương trình C# để giải bài tập in các phần tử duy nhất của mảng trong C#:

using System;namespace VietJackCsharp
{
    class TestCsharp
    {
        public static void Main()
        {            int n, bien_dem = 0;
            int[] arr1 = new int[100];
            int i, j, k;
            Console.Write("\nIn cac phan tu duy nhat cua mang trong C#:\n");
            Console.Write("------------------------------------------\n");            Console.Write("Nhap so phan tu can luu giu vao trong mang: ");
            n = Convert.ToInt32(Console.ReadLine());            Console.Write("Nhap {0} phan tu vao trong mang:\n", n);
            for (i = 0; i < n; i++)
            {
                Console.Write("Phan tu - {0}: ", i);
                arr1[i] = Convert.ToInt32(Console.ReadLine());
            }            /*kiem ta cac phan tu giong nhau*/
            Console.Write("\nCac phan tu duy nhat duoc tim thay trong mang la: \n");
            for (i = 0; i < n; i++)
            {
                bien_dem = 0;                /*kiem tra cac phan tu giong nhau truoc vi tri hien tai va  
                tang bien_dem them 1 neu tim thay.*/
                for (j = 0; j < i - 1; j++)
                {
                    /*tang bien dem khi tim thay phan tu giong nhau.*/
                    if (arr1[i] == arr1[j])
                    {
                        bien_dem++;
                    }
                }
                /*kiem tra cac phan tu giong nhau sau vi tri hien tai va  
                tang bien_dem them 1 neu tim thay.*/
                for (k = i + 1; k < n; k++)
                {
                    /*tang bien dem khi tim thay phan tu giong nhau.*/
                    if (arr1[i] == arr1[k])
                    {
                        bien_dem++;
                    }
                }
                /*In gia tri cua vi tri hien tai trong mang - la gia tri duy nhat 
                khi con tro van chua gia tri ban dau cua no.*/
                if (bien_dem == 0)
                {
                    Console.Write("{0} ", arr1[i]);
                }
            }
            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ả:

In các phần tử duy nhất của mảng trong C#
bai-tap-mang-trong-csharp.jsp