الحلقات التكرارية: while و for
أحيانًا نحتاج لتكرار مجموعة من الأوامر.
مثل عرض منتجات من قائمة واحدًا تلو الآخر أو تكرار نفس الأمر عشر مرات.
الحلقات التكرارية هي طريقة لتكرار الأوامر.
حلقة “while”
3 أنواع من الحلقات:
while – يتم فحص الشرط قبل التكرار.
do..while – يتم فحص الشرط بعد التكرار.
for (;;) – يتم فحص الشرط قبل التكرار, بعض المتغيرات الأخرى للإعداد.
لعمل حلقة لانهائية غالبا يتم استخدام while(true). ويمكن إيقافها مثل أي حلقة أخرى باستخدام break.
إذا لم نرد فعل أي شئ في التكرار الحالي ونريد الإنتقال إلى التكرار التالي يمكننا استخدام continue.
break/continue تدعم العناوين قبل الحلقة. العنوان هو الطريقة الوحيدة ل break/continue للإنتقال بين الحلقات المتداخلة إلى الحلقة الخارجية.
while loop ، بتنفيذ مجموعة التعليمات بشكل متكرر ، حتى يصبح الشرط صحيحًا وينتهي بمجرد أن يصبح الشرط خاطئًا. يمكن تحديد الشروط في عبارات التكرار مسبقًا كما في حلقة for أو مفتوحة كما في حلقة while.
هناك العديد من الاختلافات في حلقة "for" في لغة ++ C لزيادة قابليتها للتطبيق وقوتها ومرونتها. على سبيل المثال ، تسمح لنا الحلقة for باستخدام أكثر من متغير واحد داخل الحلقة للتحكم فيها ، واستخدام وظيفة converge مع حلقة "for". على العكس من ذلك ، مع حلقة while loop ، لا يمكننا استخدام العديد من الاختلافات ، والتي يجب استخدامها مع بناء الجملة القياسي.
توجد بعض الاختلافات الرئيسية بين حلقات for و while ، والتي يتم شرحها بمزيد من التفصيل بمساعدة مخطط المقارنة.
تعريف حلقة for
في Java ، هناك نوعان من أشكال إلى عن على الحلقات. النموذج الأول هو شكل "تقليدي" والثاني هو شكل "لكل".
بناء الجملة
الشكل العام لبيان حلقة for التقليدية.
لـ (التهيئة ؛ الحالة ؛ التكرار) {// body of for loop}
التهيئة: يتم تنفيذ تهيئة متغير التحكم في الحلقة for loop مرة واحدة فقط ، أثناء التكرار الأول للحلقة. هنا ، يتم تهيئة متغير التحكم في الحلقة ، في بعض الأحيان إذا لم يتم استخدام متغير الحلقة مرة أخرى في أي مكان في البرنامج ويستخدم فقط كمتغير تحكم في الحلقة ، فسيتم الإعلان عنه وتهيئته في الحلقة "for".
شرط: يتم تنفيذ شرط الحلقة "for" في كل مرة تتكرر فيها الحلقة.
الزيادة والتكرار: عبارة التكرار عبارة عن تعبير يزيد أو ينقص متغير التحكم في الحلقة.
عندما يتم تنفيذ الحلقة ، يتم تنفيذ شرط التهيئة أولاً ؛ ثم يتم فحص الحالة. إذا تم استيفاء الشرط ، يتم تنفيذ جسم الحلقة ، ثم يتم تنفيذ جملة التكرار. ثم مرة أخرى ، يتم التحقق من الشرط لمعرفة ما إذا كانت الحلقة ستتكرر أكثر أم ستنتهي.
في Java ، قد يتضمن بيان التهيئة وبيان التكرار أكثر من بيان واحد. كل عبارة مفصولة بفاصلة ، في Java ، الفاصلة هي فاصل بينما في C ++ ، "الفاصلة" هي عامل يمكن استخدامه في أي تعبير صالح.
لكل حلقة وصياغتها
شكل "لكل" هو حلقة for محسنة. الشكل العام للحلقة لكل حلقة على النحو التالي.
لـ (اكتب iter_variable: collection) statement-block
هنا ، يحدد "النوع" نوع متغير التكرار ، متبوعًا بمتغير التكرار. سيحصل متغير التكرار على العنصر من متغير المجموعة. يجب أن يكون النوع هو نفسه نوع العناصر المخزنة في متغير المجموعة. يعمل نموذج for-each من for loop على أتمتة تكرار الحلقة من البداية إلى النهاية للوصول إلى القيم بترتيب تسلسلي.
مثال
هناك أنواع مختلفة من المجموعات المستخدمة مع حلقة for. دعونا نناقشها مع مصفوفة كمجموعة.
فئة عامة Main {public static void main (String [] args) {int array [] = {10، 20، 30، 40، 50، 60}؛ إضافة عدد صحيح = 0 ؛ لـ (int c: array) {System.out.println ("القيمة في c" + c) ؛ إضافة = إضافة + ج ؛ } System.out.println ("إضافة عناصر المصفوفة" + add)؛ }} // قيمة المخرجات في قيمة c 10 في قيمة c 20 في قيمة c 30 في قيمة c 40 في قيمة c 50 في c 60 المضافة لعناصر المصفوفة هي 210
هنا ، "c" متغير تكرار ؛ يتلقى القيم من المصفوفة [] ، واحدة تلو الأخرى ، من أدنى مؤشر إلى أعلى مؤشر في المصفوفة. هنا ، تتكرر الحلقة حتى يتم فحص جميع عناصر المصفوفة. من الممكن إنهاء الحلقة الموجودة بينهما باستخدام "break". ومع ذلك ، فإن التغيير في متغير التكرار لا يؤثر على المصفوفة ، لأنه متغير للقراءة فقط.
تعريف حلقة while
ال في حين loop هي الحلقة الأساسية المتوفرة في C ++ و Java. يتشابه عمل حلقة while في كل من C ++ و Java.
بناء الجملة
إعلان حلقة while هو كما يلي
بينما (الحالة) {البيانات ؛ // جسم الحلقة}
تتحقق حلقة while في البداية من الشرط ثم تنفذ العبارات حتى يتضح أن الشرط في while loop صحيح. يمكن أن تكون الحالة في حلقة while أي تعبير منطقي. عندما يُرجع التعبير أي قيمة غير صفرية ، يكون الشرط صحيحًا ، وإذا كان التعبير يُرجع قيمة صفرية ، يصبح الشرط خطأ.
إذا أصبح الشرط صحيحًا ، فإن الحلقة تكرر نفسها ، وإذا أصبح الشرط خاطئًا ، ينتقل عنصر التحكم إلى السطر التالي من الكود متبوعًا مباشرة بالحلقة. يمكن أن تكون العبارات أو حلقة الجسم عبارة عن عبارة فارغة أو عبارة واحدة أو مجموعة من العبارات.