تجاوز إلى المحتوى الرئيسي
تابعنا على تيليجرامانضم

الخوارزميات والبرمجة

ملخص الدوال البرمجية (Functions)، المهارات الرقمية

القوانين والتعريفات والأفكار الأساسية في الموضوع، من الكتاب المقرّر. راجعها داخل TawjihiAI مع البطاقات والأسئلة.

أُجرِّب وأستكشف:

  • تعرَّفت في الدروس السابقة الدوال الجاهزة في لغة البرمجة بايثون ⁦(Python)⁩، التي يُمكن استخدامها في معالجة القوائم والسلاسل أو أداء مهام أخرى.
  • بعد ذلك أبحث في أهم الجوانب التي تختلف فيها الدوال بعضها عن بعض.

الدوال البرمجية

  • إذا افترضت أنَّ الأمر ⁦()print⁩ لم يكن موجوداً في لغة البرمجة بايثون ⁦(Python)⁩، وأنَّه يتعيَّن عليَّ دائماً طباعة أيَّ شيء على الشاشة بكتابة كامل الكود البرمجي الذي يقوم بالتعامل مع نظام التشغيل وأنواع البيانات المختلفة من أجل إظهارها على الشاشة بالشكل الصحيح، فإنَّ ذلك سيكون مُرهقاً لي بلا شك، ويجعل قراءة البرنامج عسيرة.
  • ولهذا، فإنَّ لغة البرمجة بايثون ⁦(Python)⁩ وفرت علينا هذا الجهد والعناء بتقديمها مقاطع برمجية جاهزة ومُدَقَّقة وخالية من الأخطاء، بحيث يُمكننا استدعاؤها بكل سهولة عن طريق اسمها، ودون حاجة إلى كتابة الأوامر دائماً.

الدوال البرمجية الجاهزة

  • تُوفِّر لغة البرمجة بايثون ⁦(Python)⁩ عدداً كبيراً من الدوال الجاهزة، وقد استخدمنا العديد منها في أمثلة سابقة ورد ذكرها في هذه الوحدة.
  • ونظراً إلى كثرة هذه الدوال، فإنَّه يصعب على المبرمجين تذكرها جميعاً، أو حفظ كيفية استخدامها.
  • ولهذا يُعَدُّ الموقع الإلكتروني للغة البرمجة بايثون ⁦(Python)⁩ الملاذ والصديق لكل مُبرمِج مُحترِف؛ إذ يُواظب كل منهم على زيارته باستمرار؛ للبحث عن دالة لوظيفة ما، أو تذكر كيف تعمل إحدى الدوال.

تعريف دوال برمجية جديدة

  • دوال برمجية جديدة: قد يحتاج المُستخدم إلى تعريف دوال برمجية خاصة به؛ إمَّا لتنظيم البرامج، وإمَّا لاحتواء هذه الدوال على وظائف تلزمه في البرنامج مُتكرِّرة، وإمَّا لاستدعاء آخرين هذه الدوال للإفادة منها.
  • يُبيّن الشكل (6-2) برنامجاً مُتكاملاً يعمل على تعريف دالتين واستدعائهما.
  • ولما كانت الدوال لا تُنفَّذ إلا بعد استدعائها، بغضِّ النظر عن مكانها في الملف، فإنَّ البرنامج سيبدأ العمل من السطر الذي يُسأل فيه عن الاسم، بالرغم من أنَّ هذا السطر يأتي بعد تعريف الدوال.

إرجاع النتائج

  • تعمل الدالَّة في المثال السابق على استقبال رقم يُمثِّل نصف قُطر دائرة، وإرجاع مساحة هذه الدائرة، علمًا بأنَّ عملية إرجاع النتيجة تمَّت باستخدام ⁦(return)⁩؛ إذ أُنهي تنفيذ الدالَّة عند تلك النقطة، وتمَّ إرجاع النتيجة.
  • ولهذا لن يُنفَّذ أيُّ أمر يأتي بعد هذه الجملة في الدالَّة (في حال وجود أيُّ سطر).
  • يُمكن استخدام أكثر من جملة ⁦(return)⁩ في الدالَّة نفسها، بحيث تُنفَّذ كل جملة في حالة مختلفة عن الأخرى، أنظر الشكل (6-5) الذي يُبيِّن مثالاً على دالَّة تعمل على إرجاع حرف مختلف يُمثِّل مُعدَّل الطالب بحسب علامته:

مدى المُتغيِّرات

  • تعريف المُتغيِّر ⁦(x)⁩ في المدى العام بقيمة (7).
  • استدعاء الدالَّة ⁦fun1⁩، ثمَّ إرسال القيمة (7) إلى مُتغيِّر محلي داخل الدالَّة، يُسمَّى ⁦(x)⁩.
  • تغيير قيمة المُتغيِّر المحلي ⁦(x)⁩ إلى (3).
  • انتهاء الدالَّة، والتخلُّص من المُتغيِّر المحلي ⁦(x)⁩ الذي يحمل القيمة (3).
  • العودة إلى المدى العام، حيث يوجد مُتغيِّر يُسمَّى ⁦(x)⁩، وتبلغ قيمته (7).
  • استدعاء الدالَّة ⁦fun2⁩، ثمَّ إرسال القيمة (7) إلى مُتغيِّر محلي داخل الدالَّة، يُسمَّى ⁦(x)⁩.
  • تغيير قيمة المُتغيِّر المحلي ⁦(x)⁩ إلى (5).
  • انتهاء الدالَّة، والتخلُّص من المُتغيِّر المحلي ⁦(x)⁩ الذي يحمل القيمة (5).
  • اكتمال طباعة قيمة المُتغيِّر ⁦(x)⁩.

المواطنة الرقمية:

  • المسؤولية الرقمية: أحرص على الإحاطة بالتطورات الجديدة في مجال الأمان الرقمي والتكنولوجيا، وأطور مهاراتي باستمرار.
  • المشاركة الفاعلة: أشارك في المناقشات والمنتديات بفاعلية وإيجابية، وأسهم في بناء مجتمع رقمي صحي.
  • التعاون الإلكتروني: أوظف الأدوات الرقمية في العمل الجماعي البناء والتعاون الفاعل مع الآخرين.
  • دعم المبادرات الرقمية الإيجابية: أشارك في المبادرات الرقمية التي تسهم في تعزيز الوعي الرقمي والمواطنة الرقمية.

عرض القائمة الرئيسة

  • أ. الخيار الأول: عرض تعليمات اللعبة.
  • ج. الخيار الثالث: الخروج من اللعبة.

بدء اللعبة

  • في حال الفوز: عرض رسالة التهنئة.
  • في حال الخسارة: الاستمرار في المحاولات.

نهاية اللعبة

  • طباعة الرسالة الترحيبية للعبة، وكذلك خيارات القائمة الرئيسة ⁦(def welcome())⁩.
  • طباعة تعليمات اللعبة ⁦(def about())⁩؛ ذلك أن الأجزاء طويلة نسبياً، ووجودها داخل البرنامج قد يجعل قراءته مهمة عسيرة، ومن ثم يمكن عزلها في دوال منفصلة.
  • التأكد أن الرقم الذي أدخله اللاعب هو من الأرقام المسموح بها (يتألف من أربعة أعداد).
  • عد النجوم في الرقم المدخل.
  • عد الأقمار في الرقم المدخل.
  • لا بد من وجود حلقة تكرار (لانهائية) تحيط…