Ví dụ về mảng trong C# (phần 1)

0
1137

Chương trình C # chuyển đổi một mảng 2 chiều-2D thành mảng 1 chiều-1D

Chương trình C# này sẽ chuyển đổi một mảng 2D thành mảng 1D. Ở đây các phần tử  của ma trận 2 chiều nhận được từ người sử dụng và sau đó được chuyển đổi và hiển thị như một mảng 1 chiều.

Đây là mã nguồn của chương trình C#:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Program
{
    class twodmatrix
    {
        int m, n;
        int[,] a;
        int[] b;
        twodmatrix(int x, int y)
        {
            m = x;
            n = y;
            a = new int[m, n];
            b = new int[m * n];
        }
        public void readmatrix()
        {
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    Console.WriteLine("a[{0},{1}]=", i, j);
                    a[i, j] = Convert.ToInt32(Console.ReadLine());
                }
            }
        }
        public void printd()
        {
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    Console.Write("{0}\t", a[i, j]);
 
                }
                Console.Write("\n");
            }
        }
        public void convert()
        {
            int k = 0;
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    b[k++] = a[i, j];
                }
            }
        }
        public void printoned()
        {
            for (int i = 0; i < m * n; i++)
            {
                Console.WriteLine("{0}\t", b[i]);
            }
        }
 
 
        public static void Main(string[] args)
        {
            twodmatrix obj = new twodmatrix(2,3);
            Console.WriteLine("NHAP CAC PHAN TU : ");
            obj.readmatrix();
            Console.WriteLine("\t\t TA CO MA TRAN 2 CHIEU LA : ");
            obj.printd();
            obj.convert();
            Console.WriteLine("\t\t SAU KHI CHUYEN SANG MANG MOT CHIEU: ");
            obj.printoned();
            Console.ReadLine();
        }
    }
}

Đây là kết quả của chương trình C #:

NHAP CAC PHAN TU :
a[0,0]=3
a[0,1]=7
a[0,2]=1
a[1,0]=9
a[1,1]=34
a[1,2]=23
                   TA CO MA TRAN 2 CHIEU LA :
1  4  3
7  3  8
                  SAU KHI CHUYEN SANG MANG MOT CHIEU :
1
4
3
7
3
8

Chương trình C #: Tính chiều dài của mảng

Ở đây, chiều dài của mảng 1 chiều và 2 chiều được tìm thấy bằng cách sử dụng phương thức Length.

Đây là mã nguồn của chương trình C#:

using System;
class Program
{
    static void Main()
    {
 
        int[] arrayA = new int[5];
        int lengthA = arrayA.Length;
        Console.WriteLine("DO DAI CUA MA TRAN : {0}", +lengthA); 
        long longLength = arrayA.LongLength;
        Console.WriteLine("DO LON CUA DO DAI MA TRAN  : {0}",longLength);
        int[,] twoD = new int[5, 10];
        Console.WriteLine("SO PHAN TU CUA MA TRAN 2D : {0}",twoD.Length);
        Console.ReadLine();
    }
}

Đây là kết quả của chương trình C #:

DO DAI CUA MA TRAN : 5
DO LON CUA CHIEU DAI MA TRAN :5
SO PHAN TU CUA MA TRAN 2D : 50

Chương trình C # để nhận giới hạn dưới và trên cho một mảng

GetLowerBound và GetUpperBound là 2 phương thức trả lại giới hạn dưới và trên cho một mảng tương ứng.

Đây là mã nguồn của chương trình C#:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace lower
{
    class Program
    {
        static void Main(string[] args)
        {
            Array stringArray = Array.CreateInstance(typeof(String), 6);
            stringArray.SetValue("Mango", 0);
            stringArray.SetValue("Orange", 1);
            stringArray.SetValue("Apple", 2);
            stringArray.SetValue("Grape", 3);
            stringArray.SetValue("Cherry", 4);
            stringArray.SetValue("WaterMelon", 5);
            Console.WriteLine("GIOI HAN DUOI CUA MANG LA : {0}",stringArray.GetLowerBound(0).ToString());
            Console.WriteLine("GIOI HAN TREN CUA MANG LA : {0}",stringArray.GetUpperBound(0).ToString());
            Console.ReadLine();
 
        }
    }
}

Đây là kết quả của chương trình C #:

GIOI HAN DUOI CUA MANG LA : 0
GIOI HAN TREN CUA MANG LA : 5

Chương trình C # để tìm số chiều của ma trận

Đây là mã nguồn của chương trình C#:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CSharpDemoApps
{
    class Program
    {
        static void Main(string[] args)
        { 
            int[] array1 = new int[5] { 1, 2, 3, 4, 5 };
            int[,] array2 = new int[10, 3];
            Console.WriteLine("SO CHIEU CUA MA TRAN 1 LA : " + array1.Rank);
            Console.WriteLine("SO CHIEU CUA MA TRAN 2 LA : " + array2.Rank);
            Console.ReadLine();
        }
    }
}

Đây là kết quả của chương trình C #:

SO CHIEU CUA MA TRAN 1 LA : 1
SO CHIEU CUA MA TRAN 2 LA : 2

Chương trình C # về mảng đa chiều không đều

Mảng đa chiều không đều có thể lưu trữ hiệu quả nhiều hàng với chiều dài khác nhau. Bất kỳ kiểu dữ liệu, tài liệu hoặc giá trị, đều có thể được sử dụng.

Đây là mã nguồn của chương trình C#:

using System;
class Program
{
    static void Main()
    {
        int[][] jag = new int[3][];
        jag[0] = new int[2];
        jag[0][0] = 11;
        jag[0][1] = 12;
        jag[1] = new int[1] {11};
        jag[2] = new int[3] { 14,15, 16 };
        for (int i = 0; i < jag.Length; i++)
        {
            int[] innerArray = jag[i];
            for (int a = 0; a < innerArray.Length; a++)
            {
                Console.WriteLine(innerArray[a] + " ");
            }
        }
        Console.Read();
    }
}

Đây là kết quả của chương trình C #:

11
12
11
14
15
16

This site uses Akismet to reduce spam. Learn how your comment data is processed.