التكرار
تعرف على التكرار وشاهد مثالاً لحساب العامل باستخدام التكرار.
سنغطي ما يلي...
التكرار أسلوب برمجة تستدعي فيه الدالة نفسها. إذا أمكن تقسيم المسألة إلى نسخ أصغر، يمكن للدالة أن تستدعي نفسها مع هذه النسخ الأصغر. مفهوم تقسيم المسألة إلى نسخ أصغر ليس نادرًا، وقد صادفناه عدة مرات في دروس الرياضيات المدرسية، على سبيل المثال. لنأخذ مثالًا.
مضروب العدد N
، والذي يرمز له بـ N!
هو حاصل ضرب جميع الأعداد الصحيحة الموجبة الأقل من أو تساوي N
4!
سيكون 4 x 3 x 2 x 1
.
هل يمكنك تمثيل العاملي من حيث نسخة أصغر منه؟ هل يمكنك تحديد عاملي عدد أصغر من 4
في 4 x 3 x 2 x 1
؟
4!
هو ببساطة 4 x 3!
.
كل استدعاء تكراري يعالج نسخة أبسط من المسألة الأصلية. تستمر هذه العملية حتى الوصول إلى حالة أساسية، وهي شرط بسيط يمكن حله مباشرةً دون الحاجة إلى تكرار إضافي. ما هي الحالة الأساسية للعامل برأيك؟ عامل 1
هو 1
.
مثال عاملي
فيما يلي تنفيذ متكرر بسيط لوظيفة عاملية في Python.
def factorial(n):if n == 0: # Base casereturn 1else:return n * factorial(n - 1) # Recursive callresult = factorial(4)print(result)
توضيح
فيما يلي شرح خطوة بخطوة:
المكالمة الأولية: تبدأ العملية بالمكالمة الأولية لحساب
4!
.المكالمات المتكررة: إليك المكالمة المتكررة لحساب العامل.
لحساب
4!
نحتاج إلى4 * 3!
لحساب
3!
نحتاج إلى3 * 2!
لحساب
2!
نحتاج ...