لقد رأينا أن العودية هي التنفيذ المتكرر للتعليمات الواردة في روتين فرعي. وهذا بدوره يشبه عمل الدورة. هناك لغات برمجة يكون فيها بناء الحلقة غائبًا على الإطلاق ، على سبيل المثال ، Prolog. & nbsp؛
لنحاول محاكاة عملية حلقة for. & nbsp؛
تحتوي الحلقة for على متغير عداد الخطوة. في روتين فرعي متكرر ، يمكن تمرير مثل هذا المتغير كمعامل.
<قبل>
// LoopImitation () مع معلمتين
// المعلمة الأولى & ndash؛ عداد الخطوة ، المعلمة الثانية & ndash ؛ العدد الإجمالي للخطوات
LoopImitation (i، n: عدد صحيح) ؛
يبدأ
نبسب ؛ نبسب ؛ writeln (& # 39 ؛ Hello N & # 39 ؛، i) ؛ // العامل المراد تكراره لأي قيمة لـ i
نبسب ؛ نبسب ؛ إذا كنت & lt ؛ n ثم // حتى يصبح عداد الحلقة مساويًا للقيمة n ،
نبسب ؛ نبسب ؛ نبسب ؛ نبسب ؛ LoopImitation (i + 1، n) ؛ // استدعاء مثيل جديد من الإجراء ، مع المعلمة i + 1 (الانتقال إلى القيمة التالية i)
نهاية؛