مقالات وتدوينات
(0)

الفرق بين الخوارزميات والكود الكاذب والبرنامج

1,411 قراءة
0 تعليق
alt
التصنيف مقالات وتدوينات
وقت النشر
2022/04/24
الردود
0

السلام عليكم ورحمة الله وبركاته


في هذه المقالة ستناقش الاعتقاد الخاطئ الأكثر شيوعًا بأن الخوارزميات والكود الكاذب هما نفس الشيء ولكن في الحقيقة ليسو كذلك، أولًا سنتكلم عن تعاريف كل واحدةٍ منها.

-الخوارزميات: نهج منطقي منهجي وهو إجراء واضح المعالم خطوة بخطوة يسمح للكمبيوتر بحل مشكلة ما. 

-الكود الكاذب (Pseudocode): هو إصدار أبسط من كود البرمجة بلغة إنجليزية بسيطة يستخدم عبارات قصيرة لكتابة كود لبرنامج قبل تنفيذه بلغة برمجة معينة. 

-البرنامج: هو رمز دقيق مكتوب للمشكلة باتباع جميع قواعد لغة البرمجة. 


الخوارزميات:

يتم استخدامها لتوفير حل لمشكلة معينة في شكل خطوات محددة جيدًا فعندما تستخدم جهاز كمبيوتر لحل مشكلة معينة يجب توصيل الخطوات التي تؤدي إلى الحل بشكل صحيح إلى الكمبيوتر وأثناء تنفيذ خوارزمية على جهاز كمبيوتر يتم الجمع بين العديد من العمليات مثل عمليات الجمع والطرح لإجراء عمليات حسابية أكثر تعقيدًا حيث يمكن التعبير عن الخوارزميات باستخدام اللغة الطبيعية والمخططات الانسيابية وما إلى ذلك. 

مثال: كمبرمج نحن جميعًا على دراية ببرنامج Linear Search(بحث خطي) خوارزمية البحث الخطي:1

  1. ابدأ من العنصر الموجود في أقصى اليسار لـ arr [] و واحدًا تلو الآخر قارن x مع كل عنصر من عناصر arr [].
  2. إذا تطابقت x مع عنصر ، فأعد الفهرس. 
  3.  إذا لم تتطابق x مع أي من العناصر ، فارجع -1.

من المثال السابق يمكننا أن نرى كيف يتم شرح خطوات برنامج البحث الخطي بلغة إنجليزية بسيطة. 


الكود الكاذب: 

هي إحدى الطرق التي يمكن استخدامها لتمثيل خوارزمية لبرنامج ولا تحتوي على صيغة محددة مثل أي من لغات البرمجة وبالتالي لا يمكن تنفيذه على جهاز الكمبيوتر وهناك العديد من التنسيقات المستخدمة لكتابة الكود الكاذب ومعظمها يحذف الهياكل من لغات مثل C و Lisp و FORTRAN وغيرها ويتم تقديم العديد من خوارزميات الوقت باستخدام الكود الكاذب حيث يمكن قراءتها وفهمها من قبل المبرمجين الذين هم على دراية بلغات البرمجة المختلفة ويسمح لك الكود الكاذب بتضمين العديد من هياكل التحكم مثل while و If-then-else و Repeat-until و for و case ، والتي توجد في العديد من اللغات عالية المستوى. 

ملاحظة: الكود الكاذب ليس لغة برمجة فعلية فالكود الكاذب للبحث الخطي: 


FUNCTION linearSearch(list, searchTerm):



     FOR index FROM 0 -> length(list):



       IF list[index] == searchTerm THEN



           RETURN index



       ENDIF



       ENDLOOP



           RETURN -1



END FUNCTION 

هنا لم يتم استخدام أي لغة برمجة محددة ولكن تم كتابة الخطوات للبحث الخطي في شكل أبسط حيث يمكن تعديله إلى برنامج مناسب. 


البرنامج: 

هو عبارة عن مجموعة من الإرشادات التي يجب على الكمبيوتر اتباعها ولا يمكن للجهاز قراءة البرنامج مباشرة لأنه لا يفهم سوى رمز الجهاز ولكن يمكنك كتابة أشياء بلغة الكمبيوتر ومن ثم يمكن للمترجم أو المترجم الفوري جعلها مفهومة للكمبيوتر. 

برنامج البحث الخطي:

// C++ code for linearly search x in arr[].  If x

// is present  then return its  location,  otherwise

// return -1

int search(int arr[], int n, int x)

{

    int i;

    for (i = 0; i < n; i++)

        if (arr[i] == x)

         return i;

    return -1;

}

الفرق بين الخوارزميات والكود الكاذب والبرنامج:    

  • يتم تعريف الخوارزمية على أنها تسلسل محدد جيدًا للخطوات التي توفر حلاً لمشكلة معينة في حين أن الكود الكاذب هو إحدى الطرق التي يمكن استخدامها لتمثيل الخوارزمية.        
  • بينما تتم كتابة الخوارزميات بشكل عام بلغة طبيعية أو لغة إنجليزية بسيطة تتم كتابة الشفرة الكاذبة بتنسيق مشابه لهيكل لغة البرمجة عالية المستوى ومن ناحية أخرى يسمح لنا البرنامج بكتابة رمز بلغة برمجة معينة.     
  • لذلك كما هو موضح أعلاه يمكنك أن ترى بوضوح كيف يتم استخدام الخوارزمية لإنشاء الكود الكاذب الذي يتم توسيعه بشكل أكبر باتباع صيغة معينة للغة البرمجة لإنشاء كود البرنامج.

المصدر هنا

التعليقات (0)

قم بتسجيل الدخول لتتمكن من إضافة رد