এই আর্টিকেলে দেখব, কিভাবে অ্যারের ডাটা কপি (how to copy one array to another in c ) করতে পারি অন্য একটি অ্যারেতে।
how to copy one array to another in c দিয়ে গুগল করলে তুমি অনেক উত্তর পাবে। এখানে, আমাদের দুইটি অ্যারে লাগবে। একটি আমরা ইনিশিয়াল ভ্যালু রাখব। এবং এটি কপি করে ২য় অ্যারে টি তে রাখব।
চল প্রথমে অ্যালগরিদম দেখে নেই…
ALGORITHM:
STEP 1: START
STEP 2: INITIALIZE arr1[] ={1, 2, 3, 4, 5} //অ্যারে ডিক্লিয়ার arr1
STEP 3: length = sizeof(arr1)/sizeof(arr1[0])//সাইজঅএফ দিয়ে অ্যারে সাইজ ইনপুট নেয়া।
STEP 4: DEFINE arr2[length] //অ্যারে ডিক্লিয়ার arr2, length arr1 এর সমান।
STEP 5: SET i=0. REPEAT STEP 6 and STEP 7 UNTIL (i<length)
STEP 6: arr2[i] =arr1[i]//লুপ চালিয়ে arr1 এর ভ্যালু arr2 ইনশালাইজ, স্টেপ - ৫,৬,৭
STEP 7: i=i+1.
STEP 8: DISPLAY elements of arr1[].
STEP 9: SET i=0. REPEAT STEP 10 and STEP 11 UNTIL (i<length)
STEP 10: PRINT arr1[i]
STEP 11: i=i+1.//প্রথম অ্যারে ভালু প্রিন্ট, স্টেপ - ৯, ১০, ১১
STEP 12: PRINT new line.
STEP 13: DISPLAY elements of arr2[].
STEP 14: SET i=0. REPEAT STEP 13 UNTIL (i<length)
STEP 15: PRINT arr2[i].
STEP 16: i=i+1.//দ্বিতীয় অ্যারে ভালু প্রিন্ট, স্টেপ - ১৩, ১৪, ১৫
STEP 17: RETURN 0.
STEP 18: END
এবার চল কোড দেখে নেই
#include <stdio.h>
int main()
{
//অ্যারে ডিক্লিয়ার arr1
int arr1[] = {1, 2, 3, 4, 5};
//সাইজঅএফ দিয়ে অ্যারে সাইজ নেয়া।
int length = sizeof(arr1)/sizeof(arr1[0]);
//অ্যারে ডিক্লিয়ার arr2
int arr2[length];
//Copying all elements
for (int i = 0; i < length; i++) {
arr2[i] = arr1[i];
}
//Displaying elements of array arr1
printf("Elements of array1: \n");
for (int i = 0; i < length; i++) {
printf("%d ", arr1[i]);
}
printf("\n");
//Displaying elements of array arr2
printf("Elements of array2: \n");
for (int i = 0; i < length; i++) {
printf("%d ", arr2[i]);
}
return 0;
}
OUTPUT
Elements of array1:
1 2 3 4 5
Elements of array2:
1 2 3 4 5
প্রথমে arr1 এতে ভ্যালু অ্যাসাইন করালাম। sizeof(arr1) এর মাধ্যমে অ্যারের সাইজ নিয়ে নিলাম। ২য় অ্যারেটি হবে arr2[length] প্রথম অ্যারের সমান। লুপটি length পর্যন্ত চলবে এবং arr2[i] = arr1[i]; প্রথম অ্যারের ভ্যালু ২য় তে রাখবে।
এখন ২য় অ্যারে প্রিন্ট করলেই দেখতে পারবে কপি হয়েছে।
এখানে আমরা লুপ ব্যবহার করে অ্যারে সব ডাটা কপি করেছি, তবে কিছু ল্যাংগুয়েজে বিল্ড-ইন ফাংশন আছে যা দিয়ে তুমি সহজেই কপি করে ফেলতে পারবে। যেমন, জাভাতে addAll(), clone()
, copyOf()
ইত্যাদি। রেফারেন্স লিংক।
কাজ
- অন্য কোন উপায়ে কোড গুলি কর।
- দুইবার করে লিখে সময় নিয়ে বুঝার চেষ্ঠা কর।
- অ্যারে থেকে একটি ইলিমেন্ট কপি করা।
- অ্যারে লাস্ট ৩ ইলিমেন্ট প্রিন্ট কর।
নিচের লিংক গুলি প্রক্টিস কর
- কন্টিনিউ ইন সি ( continue in c )
- ব্রেক কিওয়ার্ড সি (break keyword in c)
- ইনফিনিট লুপ সি ( Infinite loop in C)
- নিস্টেড লুপ সি (Nested loops C)
- ফর লুপ সি (for loop c)
রেফারেন্স লিংক