do while في لغة ++C

اقرأ في هذا المقال


تستخدم do while من أجل تكرار جزء من البرنامج المستخدم مرات عدّة، ويتم تنفيذ التكرار مرة على الأقل حتى ولو لم يكن الشرط متحقق؛ وذلك بسبب أنه يتم التحقق من الشرط بعد التنفيذ، وهذا هو الفرق بين (do while) و (while) أو (for)، أن الشرط يكتب بعد العبارات المطلوب تكرارها، وتستخدم أيضاً عندما نريد بجزء من البرنامج مرة واحدة على الأقل.
التكرار يبدأ بالأمر افعل أو كرر (do) ثمّ يأتي بعده مجموعة من العبارات والإيعازات المطلوب تكرارها منتهية بالأمر (while) أي طالما والذي يأتي بعده الشرط، عندما يجد المترجم عبارة (do) فإنه سوف يقوم بإعادة تنفيذ العبارات المحصورة بين هذا الأمر والأمر (while)، وفي كل مرة يصل فيها المترجم إلى (while) يقوم بفحص الشرط الذي يليه فإذا كان الشرط متحقق فإن المترجم يعود للأمر (do)، ويبدأ بالتنفيذ من (do) نزولاً إلى الأمر (while) من جديد، وتستمر هذه العملية لغاية عدم تحقق الشرط.

220px-Do-while-loop-diagram.svg

الشكل العام لـ do while:

do
}
;statement 1
;statement 2
;statement n
{
(while ( condition

ما هو الفرق بين أمري التكرار while و do while؟

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

مثال على أمر التكرار do while:

<include<iostream#
;using namespace std
()void main
}
;int j=0
do
}
;”cout<<j<<“\t
;++j
;(while(j<9
{
في هذا المثال عرفنا متغير j=0 وقمنا بإعطائه قيمة إبتدائية ووضعناه داخل عبارة ال do، هنا سوف تقوم بطباعة قيمة ال j وهي 0 ثمَّ تزيد القيمة بمقدار 1 ثمَّ يدخل الشرط while، حيث أن الشرط هو أن قيمة ال j أقل من 9، وبما أن الشرط متحقق يعود للأمر do وينفذ ما بداخلها وهكذا إلا أن يصبح الشرط غير متحقق، وفي هذا المثال سيقوم بطباعة الأعداد من 1-8 وفراغ بين كل عدد والآخر.
ملاحظة: t\ وظيفتها أن تترك 8 فراغات.


المصدر: كتاب لغة C الشامل -خليل أونيس++Cمن البداية إلى البرمجة الكائنية_ تعلم لغة ++C -حسين حسون


شارك المقالة: