تم تصميم هذه المادة لإعطاء المفاهيم الأساسية لما خوارزمية دوري، والتي هي مشتركة في أي لغة البرمجة ومستوى مبرمج الإعداد.
الخوارزمية هي سلسلة من الإجراءاتلحل مشكلة حسابية وغيرها في عدد محدود من الخطوات. يمكن تنفيذ الإجراءات (تعليمات) لتنفيذ الخوارزمية واحدا تلو الآخر (بالتتابع)، في وقت واحد (بالتوازي) أو في ترتيب تعسفي، وذلك باستخدام دورات وظروف الانتقال. وتستخدم الخوارزميات ليس فقط في البرمجة، ولكن أيضا في مجالات أخرى من النشاط، على سبيل المثال، في إدارة عمليات الإنتاج والأعمال.
ويقال أن خوارزمية تكون دورية إذا كان في ذلكهناك إجراءات أو مجموعات من الإجراءات التي تحتاج إلى تنفيذ أكثر من مرة. الإجراءات الخوارزمية المتكررة هي جسم الدورة. بالإضافة إلى ذلك، كل دورة لديها شرط أن تنفيذ خوارزمية دوري ينتهي.
كل خوارزمية دوري له في تكوينهحالة الحلقة، أي تعبير منطقي تحدد نتائجه ما إذا كان سيتم تنفيذ جسم الحلقة مرة أخرى أو سيتم إنهاء الحلقة. بواسطة طريقة المعالجة، يتم تقسيم جميع الخوارزميات الدورية إلى ثلاث مجموعات.
في مثل هذه الخوارزميات الدورية، يتم التحقق من حالة استمرار قبل معالجة الجسم حلقة، وهذا هو، هناك حاجة لتكرار معالجة حلقة.
النظر في إخراج الأرقام من -5 إلى 0 كمثال على الخوارزميات الدورية مع شرط مسبق:
يتم تنفيذ فحص الحالة بعد المعالجة الأولى من الجسم حلقة والتحكم في الإخراج منه.
دعونا نحلل حساب المجموع من 1 إلى العدد n كمثال على الخوارزميات الدورية التي يتم فيها استخدام الحالة البريدية:
وعادة ما تستخدم في الخوارزميات حيث العدد المطلوب من إعدام حلقة معروفة مسبقا، وغالبا ما تستخدم عند العمل مع المصفوفات.
تحتوي هذه الخوارزمية على ثلاثة عناصر إلزامية:
في كل خطوة، يتحقق البرنامج من ذلكما إذا كانت قيمة البداية محدودة. وإذا كان الأمر كذلك، تنتهي الدورة. وإلا، نضيف حجم الخطوة إلى قيمة البداية وتكرر الدورة. وتجدر الإشارة بصفة خاصة إلى أنه يمكن استبدال أي دورة غير مشروطة بدورة مشروطة مع ما قبل أو بحالة ما بعد البيع.
عند تجميع الخوارزميات الدورية،والتمسك بشرطين إلزامي. أولا، لإنهاء حلقة، فمن الضروري أن محتويات الجسم تؤثر على وظيفة أو شرط مسبق، وإلا فإننا يمكن أن ينتهي مع حلقة لانهائية. ولكن بالنسبة لبعض المهام البرمجيات يتم تطبيق هذه الدورات. وكمثال على الخوارزميات الدورية التي تعمل إلى أجل غير مسمى، يمكننا الاستشهاد بنظام التشغيل ويندوز، حيث يتم استخدام حلقة لانهائية من الاقتراع موقف الماوس لتحديد إجراءات المستخدم. ثانيا، يجب أن توفر المتغيرات التي تم تمريرها إلى الحلقة تنفيذ واحد على الأقل.
ولتعزيز القراءة، نقدم مثالا على ذلكخوارزميات دورية لحساب عامل عدد صحيح. المثال أعلاه هو حلقة مع شرط مسبق، ولكن من الممكن لتنفيذ أي نوع من خوارزمية دورية.