২-ডি অ্যারে কি?

২- ডি মানে হল ডাইমেনশনাল (dimensional) আয়তন বা মাত্রা। এখানে, যেহেতু ২টি মাত্রার অ্যারে সারি এবং কলামগুলির সংগ্রহ হিসাবে উপস্থাপিত হয় ।

তাই, ২ডি অ্যারেগুলি একটি রিলেশনাল ডেটাবেস স্ট্রাকচার তৈরি করে। এটি একসাথে প্রচুর পরিমাণে ডেটা সংরক্ষন এবং সহজলভ্য করে।

সিনটেক্স

data_type array_name[rows][columns]; 
int num[4][3];

এখানে, মোট ১২ টি ইন্টিজার টাইপ এর অ্যারে ভেরিয়াবল ঘোষনা করা হয়েছে।

2d array structure bncodeing

চল আমরা দেখি ভেরিয়েবল গুলিতে কিভাবে একে একে ডাটা ডুকাতে পারি।

num[0][0] = 15;
num[0][1] = 30;
num[0][2] = 60;
num[1][0] = 20;
num[1][1] = 40;
num[1][2] = 80;
num[2][0] = 25;
num[2][1] = 50;
num[2][2] = 100;
num[3][0] = 30;
num[3][1] = 60;
num[3][2] = 120;

চল আমরা প্রিন্ট করে দেখি

#include<stdio.h>
int main ()
{
    int num[4][3];

    num[0][0] = 15;
    num[0][1] = 30;
    num[0][2] = 60;
    num[1][0] = 20;
    num[1][1] = 40;
    num[1][2] = 80;
    num[2][0] = 25;
    num[2][1] = 50;
    num[2][2] = 100;
    num[3][0] = 30;
    num[3][1] = 60;
    num[3][2] = 120;

    printf("0, 0 index value is %d\n", num[0][0]);
    printf("0, 1 index value is %d\n", num[0][1]);
    return 0;
}

Output

0, 0 index value is 15
0, 1 index value is 30

এই অ্যারের ডাটাগুলি আমি একলাইনেও পারতাম এভাবে

int arr[4][3]={{1,2,3},{2,3,4},{3,4,5},{4,5,6}}; 

চল অ্যারেটি ট্রাভার্সিং করে দেখি

#include<stdio.h>
int main ()
{

    int num[4][3];
    int i=0, j = 0;

    num[0][0] = 15;
    num[0][1] = 30;
    num[0][2] = 60;
    num[1][0] = 20;
    num[1][1] = 40;
    num[1][2] = 80;
    num[2][0] = 25;
    num[2][1] = 50;
    num[2][2] = 100;
    num[3][0] = 30;
    num[3][1] = 60;
    num[3][2] = 120;

    //traversing 2D array
    for(i=0;i<4;i++){
        for(j=0;j<3;j++){
            printf("num[%d] [%d] index value is = %d\n",i,j,num[i][j]);
        }//end of j
    }//end of i

    return 0;

}

আউটপুট

num[0] [0] index value is = 15
num[0] [1] index value is = 30
num[0] [2] index value is = 60
num[1] [0] index value is = 20
num[1] [1] index value is = 40
num[1] [2] index value is = 80
num[2] [0] index value is = 25
num[2] [1] index value is = 50
num[2] [2] index value is = 100
num[3] [0] index value is = 30
num[3] [1] index value is = 60
num[3] [2] index value is = 120

চল লুপ ব্যবহার করে ২ডি অ্যারের ভেলু ইনপুট নেই

#include <stdio.h>    
void main ()    
{    
    int arr[3][3],i,j;     
    for (i=0;i<3;i++)    
    {    
        for (j=0;j<3;j++)    
        {    
            printf("Enter a[%d][%d]: ",i,j);                
            scanf("%d",&amp;arr[i][j]);    
        }    
    }    
    printf("\n printing the elements ....\n");     
    for(i=0;i<3;i++)    
    {    
        printf("\n");    
        for (j=0;j<3;j++)    
        {    
            printf("%d\t",arr[i][j]);    
        }    
    }    
}    

আউটপুট

Enter a[0][0]: 56   
Enter a[0][1]: 10   
Enter a[0][2]: 30  
Enter a[1][0]: 34  
Enter a[1][1]: 21 
Enter a[1][2]: 34    

Enter a[2][0]: 45
Enter a[2][1]: 56
Enter a[2][2]: 78   

 printing the elements .... 
 
56      10      30  
34      21      34  
45      56      78

বিঃদ্রঃ এই অ্যারেটি বুজলে মাল্টি ডাইমেনশনাল অ্যারে ও বুজবে।


কাজ

  • সবগুলি কোড দুবার করে লিখে রান কর ।
  • সর্ট কর অ্যারে টি।

নিচের লংক গুলি ফলো করো

রেফারেন্স লিংক ওয়েবসাইট

Leave a Reply