ما هو الفرق بين بسيودوكود والخوارزمية؟ الفرق بين

Anonim

وبعبارات بسيطة جدا، بسيودوكود هو سرد يصف منطق الخوارزمية.

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

< لغة النمذجة الموحدة (أومل) ومنهجيات نمذجة الأعمال الأخرى يمكن أن يطلق عليها أيضا أمثلة على بسيودوكود على الرغم من أن هذه الأدوات لا تستند فقط إلى نصوص، إلا أنها تستخدم لتوفير تمثيل مرئي لمهمة أو عملية قابلة للتنفيذ.

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

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

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

انظر إلى هذا المثال الكاذب من أكاديمية خان

[i] :

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

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

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

// كيف نحصل على أفكارنا في التعليمات البرمجية؟

// رسم الوجه، البيضاوي في المركز

القطع الناقص (العرض /

2 ، ارتفاع / 2 ، 200 300 ). // رسم العينين، اثنين من البيضاوي، حوالي 2/3 على الوجه، و 1/5 حجم الوجه القطع الناقص (العرض /

2

- 40 < ، ارتفاع / 2 - 50 ، 40 ، 40 2 - 2

+ 40 + 40 40 ). مثال آخر أدناه يظهر أكثر تقنية ومنهجية اقترب من كتابة بسيودوكود: إذا كانت درجة الطالب أكبر من أو تساوي 60 برينت "ويل دون! " إلس اطبع" عذرا، فشلت " عند الإشارة إلى رموز مسيئة، هناك مصطلحات قياسية تمثل منطق الخوارزمية، مثل سكنس

،

وايل >

إف-ثين-إلس

والبنية الإضافية المفيدة أيضا تشمل

ريبيت-ونتيل

و كيس و ل . هذه الشروط مفهومة من قبل المطورين ومفيدة لبناء المتطلبات دون استخدام عامية أو المصطلحات الشخصية التي قد لا تكون مفهومة من قبل الآخرين. سيكنس يشير إلى أعلى إلى أسفل تنفيذ المهام بالتتابع. بينما هي حلقة متكررة يتم تنفيذها حتى يتم استيفاء شرط محدد في البداية. إف-ثين-إلس هو قرار يتم اتخاذه بين شرطين: مثال

إف ساعات العمل> نورمالويك ثم

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

حالة ونتيل

حالة

تنص على قرارات متعددة استنادا إلى قيمة تعبير.

ل

  • هو تكرار الحلقات لاحظ أن لكل مهمة أو عملية، استخدم
إند

/

إنديف

(حيث يتم استخدام إف) تشير إلى أنه نقطة إنهاء أو نتيجة الإخراج.

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

الخوارزمية ؟ بشكل غير رسمي، الخوارزمية هي أي عملية حسابية محددة جيدا تأخذ بعض القيمة، أو مجموعة من القيم، كإدخال وتنتج بعض القيمة، أو مجموعة من القيم، كما الإخراج. خوارزمية هي بالتالي سلسلة من الخطوات الحسابية التي تحول

المدخلات في الإخراج

. "

[إي]

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

- لتنفيذ المهام، والتلاعب، وتشفير، واستخراج البيانات.

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

عند كتابة بسيودوكود في مرحلة التخطيط، تذكر أن الخوارزمية يجب أن تكون فعالة ومركزة وتصل إلى نتيجة نهائية. يجب النظر دائما في جميع جوانب الحل.

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

وهناك جانب آخر مهم للنظر في تصميم وتنفيذ الخوارزمية هو مدى السرعة التي ينفذها. ويتضح هذا بشكل متزايد مع المستخدمين النهائيين الذين يعتادون على برامج أسرع وأسرع الأجهزة.

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