موصى به, 2020

اختيار المحرر

الفرق بين حين وقيام أثناء حلقة

تسمح عبارات Iteration لمجموعة التعليمات بتنفيذها بشكل متكرر حتى لا تتحول الحالة إلى خطأ. تكون عبارات Iteration في C ++ و Java ، للحلقة ، أثناء التكرار والقيام بالتكرار. هذه العبارات تسمى عادة الحلقات. هنا ، يكون الاختلاف الرئيسي بين حلقة ما وبين حلقة أثناء قيامه هو أنه أثناء تحقق من حالة الحلقة قبل تكرار الحلقة ، في حين تقوم حلقة do-while بفحص الشرط بعد تنفيذ العبارات داخل الحلقة.

في هذه المقالة ، سوف نناقش الاختلافات بين حلقة "حين" و "عدم القيام".

رسم بياني للمقارنة

أساس للمقارنةفي حينافعل اثناء
الشكل العامبينما (الشرط) {
صياغات؛ // body of loop
}
فعل{
.
صياغات؛ // body of loop.
.
} بينما (الشرط) ؛
السيطرة على الشرطفي حلقة "while" تظهر حالة التحكم في بداية الحلقة.في حلقة do-while ، تظهر حالة التحكم في نهاية الحلقة.
التكراراتلا تحدث التكرارات إذا ظهر الشرط في التكرار الأول كاذبة.يحدث التكرار مرة واحدة على الأقل حتى إذا كانت الحالة خاطئة عند التكرار الأول.

تعريف في حين حلقة

حلقة while هي الحلقة الأساسية المتوفرة في C ++ و Java. يشبه عمل حلقة while في كل من C ++ و Java. الشكل العام من حلقة while هو:

 بينما (الشرط) {عبارات؛ // body of loop} 

تقوم حلقة while بالتحقق أولاً من الشرط ، وإذا كان الشرط صحيحًا ، فإنه يتكرر في الحلقة حتى تتحول الحالة إلى خطأ. يمكن أن يكون الشرط في حلقة أثناء أي تعبير boolean. عندما يقوم التعبير بإرجاع أي قيمة غير صفرية ، فإن الشرط يكون "true" ، وإذا قام تعبير بإرجاع قيمة صفرية ، يصبح الشرط "false". إذا أصبح الشرط صحيحًا ، فعندئذٍ يتم تكرار الحلقة نفسها ، وإذا أصبح الشرط غير صحيح ، فإن عنصر التحكم يمرر إلى السطر التالي من الشفرة متبوعًا مباشرةً بالحلقة.

يمكن أن تكون عبارات أو نص الحلقة عبارة فارغة أو عبارة واحدة أو كتلة من العبارات.

دعونا نناقش عمل حلقة في حين. في المثال أدناه ، ستتم طباعة الرمز من 1 إلى 10.

 // example في جافا. class while {public static void main (args []) {int n = 0؛ بينما (n <= 10) {n ++؛ system.out.println ("n =" + n)؛ }}} // output n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

هنا ، تكون القيمة الأولية لـ 'n' هي 0 ، والتي تحول الحالة في حين loop true. يدخل عنصر التحكم بعد ذلك إلى الجسم أثناء التكرار ويتم زيادة قيمة 'n' وفقًا للبيان الأول في جسم حلقة ما. ثم تتم طباعة قيمة 'n' ومرة ​​أخرى ، يعود عنصر التحكم إلى حالة حلقة while ، والآن تكون القيمة 'n' هي 1 التي تفي مرة أخرى بالحالة ، ويتم تنفيذ نص الحلقة مرة أخرى.

يستمر هذا حتى يصبح الشرط صحيحًا ، وبمجرد أن تصبح الحالة زائفة يتم إنهاء الحلقة. وكما هو الحال بالنسبة للحلقة ، تقوم حلقة while بفحص الشرط أولاً ثم تنفيذ نص الحلقة.

تعريف do-while حلقة

كما هو الحال في حين حلقة ، إذا كان شرط السيطرة يصبح كاذبا في التكرار الأول فقط ، ثم لا يتم تنفيذ الجسم من حلقة في حين على الإطلاق. لكن حلقة "do-while" تختلف بعض الشيء عن حلقة "loop". تقوم حلقة do-while بتنفيذ جسم الحلقة مرة واحدة على الأقل حتى إذا كانت الحالة خاطئة في المحاولة الأولى.

الشكل العام لل do-while هو كما يلي.

 فعل{ . تصريحات // الجسم من حلقة. . } بينما (الشرط) ؛ 

في حلقة do-while ، يحدث جسم الحلقة قبل شرط التحكم ، ويكون العبارة الشرطية في الجزء السفلي من الحلقة. كما هو الحال في حين حلقة ، وهنا أيضا ، يمكن أن يكون الجسم من حلقة فارغة كما يسمح كل من C ++ وجافا عبارات فارغة ، أو يمكن أن يكون هناك بيان واحد فقط ، أو كتلة من البيانات. الشرط هنا هو أيضًا تعبير منطقي ، وهو صحيح لجميع القيم غير الصفرية.

في حلقة do-while ، يصل عنصر التحكم أولاً إلى العبارة في نص حلقة do-while. يتم تنفيذ البيانات في الجسم أولاً ثم يصل عنصر التحكم إلى الجزء الشرطي من الحلقة. يتم التحقق من الشرط ، وإذا كان صحيحًا ، يتم تكرار الحلقة مرة أخرى ، وإذا كان الشرط خاطئًا ، يستأنف التحكم إلى السطر التالي فورًا بعد الحلقة.

دعونا نفهم ذلك من خلال تنفيذ المثال أعلاه في حين القيام.

 // example في جافا. class while {public static void main (args []) {int n = 1؛ do {system.out.println ("n =" + n)؛ ن ++؛ } بينما (n <10)}} // output n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

هنا ، قيمة n = 1 يستأنف التحكم إلى جسم الحلقة ، تتم طباعة قيمة 'n' ومن ثم يتم زيادة قيمته. ثم يستأنف التحكم إلى حالة حلقة do-while ؛ يتم التحقق من الشرط الذي يتحول إلى true لـ n = 1 ، لذلك ، يتم تكرار التكرار مرة أخرى ويستمر حتى يصبح الشرط false.

الاختلافات الرئيسية بين حين و do-while حلقة

  1. بينما تقوم الحلقة الداخلية بفحص الشرط في بداية الحلقة وإذا تم استيفاء شرط العبارة داخل الحلقة ، يتم تنفيذه. في حلقة do-while ، يتم التحقق من الشرط بعد تنفيذ جميع العبارات في نص الحلقة.
  2. إذا كان الشرط في حلقة while false لا يتم تنفيذ جملة واحدة داخل الحلقة ، وإذا كان الشرط في حلقة "do-while" غير صحيح ، فسيتم أيضًا تنفيذ نص الحلقة مرة واحدة على الأقل ثم يتم اختبار الشرط.

استنتاج:

كل من حين و do-while loop عبارة التكرار ، إذا أردنا ذلك أولاً ، يجب التحقق من الشرط ، ثم يجب تنفيذ العبارات داخل الحلقة ثم يتم استخدام حلقة while. إذا كنت ترغب في اختبار حالة الإنهاء في نهاية الحلقة ، فسيتم استخدام حلقة do-while.

Top