السؤالُ الأولُ: ما المقصود بالدالََّة الراجعة؟ وما الحالة الأساسية في الدوال الراجعة؟
إجابة السؤال الأول:
الدالََّة الراجعة: هي نوع من أنواع الدوال المستخدمة في البرمجة لغايات حل مسألة معينة ويكون لديها المقدرة على إستدعاء نفسها مرات عديدة أثناء التنفيذ.
الحالة الأساسية: هي عبارة عن شرط إيقاف يعمل على منع عملية إستدعاء الدالة لنفسها بشكل لانهائي. ويطلق عليها (Base Case).
السؤالُ الثاني: أستخلص إيجابيات استخدام الدالََّة الراجعة وسلبياتها.
إجابة السؤال الثاني:
| إيجابيات الدالة الراجعة | سلبيات الدالة الراجعة |
|---|---|
| تعمل على تنظيم الكود،إذ يتم تقسيم المشاكل المعقدة إلى أجزاء أصغر مما يسهل قراءة الكود وفهمه ويساعد على صيانة الكود في المستقبل. | استهلاك الذاكرة، حيث أن كل عملية استدعاء تعمل على حجز جزء من الذاكرة |
| توفير الوقت والجهد ، حيث يمكن استدعاء الدالة في أجزاء مختلفة من البرنامج وبالوقت الذي نحتاجه دون الحاجة الى إعادة كتابة نفس الاوامر وتكرارها. | ممكن تؤدي الى توقف البرنامج وتعطل الجهاز في حال عدم وجود الحالة الأساسية (شرط التوقف). |
| المرونة في تطبيق الدالة على قيم مختلفة من خلال تمرير المعاملات المختلفة مما يساعد على أداء نفس المهمة بعدة طرق |
السؤال الثالث: أكتب الصيغة العامة للدوال الراجعة في لغة البرمجة بايثون.
إجابة السؤال الثالث:

السؤال الرابع: ما الفََرْْق بين الدالََّة الراجعة وجملة الدوران، مثل( for) و (while) ؟
إجابة السؤال الرابع:
يمكن المقارنة بينهما من حيث عدد من المعايير منها:
| المعيار | الدالة الراجعة | حلقات التكرار |
| تنظيم الكود وفهمه | منسق ومرتب وحجم جمل أقل | عدد أكبر من الجمل والتعليمات |
| سرعة التنفيذ | أبطأ بسبب استهلاك الذاكرة | أسرع بسبب عدم وجود وقت للاستدعاء وحجز للذاكرة |
| استهلاك الذاكرة | أكثر استهلاكا للذاكرة | أقل استهلاكا للذاكرة |
| طبيعة المسائل المستخدمة | المشاكل والمسائل التي يمكن تقسيمها لمشاكل أصغر | المشاكل والمسائل البسيطة |