إن الاختلاف مابين دالة do-while التكرارية وبين الدوال التكرارية الاخرى هي انها تنفذ ما بين قوسيها ثم يتحقق من الشرط فإذا كان ناتج الشرط True تعيد تنفيذ ما بين قوسيها من جديد وإذا كان False تنتقل الى الخطوة التي تليها. اما بالنسبة الى for و while فهي تتحقق من الشرط ثم تنفذ مابين قوسيها فإذا كان ناتج الشرط True تنفذ مابين قوسيها اما إذا كان False فانها تنتقل الى الخطوة التي تليها.
ولكي تتضح الصورة أكثر ناخ المثال التالي الذي يطلب منك أن تدخل رقم ويقدر الرقم ويطبع عبارة (!Hello) اي لو قمت بادخال الرقم 5 سيطبع هذه العبارة خمس مرات وإذا أدخلت واحد يطبعها مرة واحدة.
- الحل باستخدام for
- الحل باستخدام While
- الحل باستخدام do-while
الان لنقارن النتائج بالنسبة للكود البرمجي لكل واحدة
- إذا ادخلنا الرقم 5 من شاشة التنفيذ فان الـ for و while سوف يطبع كلمة !Hello خمس مرات وكذلك بالنسبة do-while ستطيع الكلمة 5 مرات وستكون شاشة التنفيذ بالنسبة للأمثلة الثلاثة على الشكل التالي: " اي رقم اكبر من واحد سيتم طباعة الكلمة بعدد الرقم المدخل من شاشة التنفيذ"
- إذا ادخلنا الرقم 0 من الشاشة التنفيذ فان الـ for و while سوف لاتطبع اي شيئ لانة عند التحقق من الشرط ( i<= input_numbe) سيكون الشرط False وسوف يذهب الى نهاية البرنامج. اما بالنسبة الى do-while سوف يطبع كلمة !Hello مرة واحدة لأنة ينفذ مرة واحدة ومن ثم يتحقق من الشرط وستكون شاشة التنفيذ على الشكل التالي: