الجمعة، 2 أكتوبر 2020

Program to reverse copy array in C برنامج لعكس مجموعة نسخ في C.

 Program to reverse copy array in C برنامج لعكس مجموعة نسخ في C.



سيساعدك هذا البرنامج على تعلم أحد أساسيات المصفوفات. 

سنقوم بنسخ مصفوفة إلى أخرى ولكن بالعكس.

الخوارزمية

دعونا أولاً نرى ما يجب أن يكون الإجراء خطوة بخطوة لهذا البرنامج -

START
   Step 1 → Take two arrays A, B
   Step 2 → Store values in A
   Step 3 → Set count to sizeof(A)
   Step 4 → Loop for each value of A
   Step 5 → Copy A[loop] to B[count]
   Step 6 → Decrement count
   Step 7 → Display B
STOP

كود مزيف

دعنا الآن نرى الرمز الكاذب لهذه الخوارزمية -

procedure reversecopy_array(A, B)

   SET index to 1
   Set count to sizeof(A)
   FOR EACH value in A DO
      B[count] = A[index]
      INCREMENT index
      DECREMENT count
   END FOR
   DISPLAY B
   
end procedure

التنفيذ

تنفيذ الكود الكاذب المشتق أعلاه كما يلي -

#include <stdio.h>

int main() {
   int original[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
   int copied[10];
   int loop, count;
   
   count = 9;
   
   for(loop = 0; loop < 10; loop++) {
      copied[count] = original[loop];
      count--;
   }
      
   printf("original -> copied \n");
   
   for(loop = 0; loop < 10; loop++) {
      printf("   %2d        %2d\n", original[loop], copied[loop]);
   }

   return 0;
}

يجب أن يبدو الإخراج كالتالي -

original -> copied
    1         0
    2         9
    3         8
    4         7
    5         6
    6         5
    7         4
    8         3
    9         2
    0         1

التسميات: