كيفية دمج مصفوفتين في مصفوفة واحدة باستخدام لغة C: أمثلة عملية

Amine
23/10/2024

برنامج لدمج مصفوفتين في مصفوفة واحدة باستخدام C

في هذا الدرس، سنتعلم كيفية دمج (concatenate) محتويات مصفوفتين في مصفوفة واحدة باستخدام حلقة for في لغة C. دمج المصفوفات يعني نقل جميع العناصر من مصفوفتين إلى مصفوفة ثالثة.

مفهوم دمج المصفوفات

لدمج مصفوفتين في مصفوفة ثالثة، نحتاج إلى نسخ جميع عناصر المصفوفة الأولى إلى المصفوفة الثالثة أولاً، ثم بعد ذلك ننسخ جميع عناصر المصفوفة الثانية إلى نفس المصفوفة الثالثة.

برنامج لدمج مصفوفتين في مصفوفة ثالثة

في البرنامج التالي، سنقوم بدمج مصفوفتين مكونتين من 5 أرقام في مصفوفة ثالثة:

#include <stdio.h>

int main() {
   // تعريف المصفوفتين arr1 و arr2
   int arr1[5] = {1, 2, 3, 4, 5};
   int arr2[5] = {6, 7, 8, 9, 10};
   // تعريف المصفوفة الناتجة arr3
   int arr3[10];
   int i, j;
   
   // نسخ عناصر arr1 إلى arr3
   for(i = 0; i < 5; i++) {
      arr3[i] = arr1[i];
   }
   
   // نسخ عناصر arr2 إلى arr3 بعد عناصر arr1
   for(j = 0; j < 5; j++, i++) {
      arr3[i] = arr2[j];
   }
   
   // طباعة المصفوفة المدموجة arr3
   printf("محتويات المصفوفة المدموجة:\n");
   for(i = 0; i < 10; i++) {
      printf("%d ", arr3[i]);
   }
   
   return 0;
}

الإخراج

محتويات المصفوفة المدموجة:
1 2 3 4 5 6 7 8 9 10

شرح البرنامج

في البرنامج أعلاه:

  • قمنا بتعريف مصفوفتين arr1 و arr2 تحتويان على 5 عناصر كل منهما.
  • قمنا بتعريف مصفوفة ثالثة arr3 بحجم 10، لاحتواء جميع عناصر arr1 وarr2.
  • استخدمنا حلقة for الأولى لنسخ جميع عناصر arr1 إلى arr3.
  • ثم استخدمنا حلقة for الثانية لنسخ جميع عناصر arr2 إلى arr3 بعد العناصر المنسوخة من arr1.
  • أخيرًا، طبعنا المصفوفة arr3 باستخدام حلقة for لعرض العناصر المدموجة.

برنامج لدمج مصفوفتين مدخلتين من المستخدم

في البرنامج التالي، سنطلب من المستخدم إدخال القيم لعناصر المصفوفتين، ثم ندمجهما في مصفوفة ثالثة:

#include <stdio.h>

int main() {
   int arr1[5], arr2[5], arr3[10], i, j;
   
   // طلب إدخال القيم للمصفوفة الأولى arr1
   printf("أدخل 5 أرقام للمصفوفة الأولى:\n");
   for(i = 0; i < 5; i++) {
      scanf("%d", &arr1[i]);
   }
   
   // طلب إدخال القيم للمصفوفة الثانية arr2
   printf("أدخل 5 أرقام للمصفوفة الثانية:\n");
   for(i = 0; i < 5; i++) {
      scanf("%d", &arr2[i]);
   }
   
   // نسخ عناصر arr1 إلى arr3
   for(i = 0; i < 5; i++) {
      arr3[i] = arr1[i];
   }
   
   // نسخ عناصر arr2 إلى arr3 بعد عناصر arr1
   for(j = 0; j < 5; j++, i++) {
      arr3[i] = arr2[j];
   }
   
   // طباعة المصفوفة المدموجة arr3
   printf("محتويات المصفوفة المدموجة:\n");
   for(i = 0; i < 10; i++) {
      printf("%d ", arr3[i]);
   }
   
   return 0;
}

الإخراج

أدخل 5 أرقام للمصفوفة الأولى:
1
2
3
4
5
أدخل 5 أرقام للمصفوفة الثانية:
6
7
8
9
10
محتويات المصفوفة المدموجة:
1 2 3 4 5 6 7 8 9 10

الخاتمة

في هذا الدرس، تعلمنا كيفية دمج محتويات مصفوفتين في مصفوفة ثالثة باستخدام حلقة for في لغة C. يمكنك تطبيق هذا الأسلوب لدمج أي عدد من المصفوفات بغض النظر عن حجمها أو نوع القيم المخزنة فيها.

التعليقات

اترك تعليقاً