أساسيات البرمجةالحلقة do while
- مفهوم الحلقة
do while
- مثال حول الحلقة
do while
- تمارين حول الحلقة
do while
مفهوم الحلقة do while
نستخدم الحلقة do while
إذا أردنا تنفيذ الأوامر عدد غير محدد من المرات و لكننا نريدها أن تتنفذ مرة واحدة على الأقل، ففي هذه الحلقة يتم تنفيذ الأوامر أولاً ثم التأكد ما إن كان يجب إعادة تنفيذها أم لا.
إذاً هنا الحلقة تستمر في إعادة تنفيذ الأوامر الموضوعة فيها طالما أن الشرط الموضوع فيها لا يزال يتحقق.
نستخدم هذه الحلقة بشكل خاص حين نريد إجبار المستخدم على إدخال قيمة ضمن شروط محددة لأننا وقتها نجعله يدخل قيمة أولاً و بعدها نقوم بفحص القيمة التي أدخلها، إن لم تكن ضمن الشروط التي نريدها (مثلاً أكبر من صفر) فإننا نجبره على إعادة إدخالها.
طريقة إستخدامها
بشكل عام نستخدم هذه الحلقة على النحو التالي.
{
// statements
}
while (condition)
- statements: هنا نضع جميع الأوامر التي نريدها أن تتنفذ في كل دورة. بعد أن تتنفذ جميع الأوامر سينزل المحرر إلى الشرط الموضوع في الحلقة ليرى ما إن كان يجب إعادة تنفيذ هذه الأوامر أم لا.
- condition: هنا نضع الشرط الذي يحدد ما إن كانت الحلقة يجب أن تتوقف عن تكرار الكود الموجود فيها أم لا. طالما أنه يتحقق، أي نتيجة الشرط تساوي
true
فهذا يعني أنه سيتم تكرار الكود.
في الحلقة do while
عدد المرات التي ستتنفذ فيها الأوامر الموضوعة في الحلقة غير محدد من البداية و لكن الشيء المعلوم هو أنها تنفذ الأوامر مرة واحدة على الأقل و هذا هو الفرق الأساسي بينها و بين الحلقة while
.
مثال حول الحلقة do while
في المثال التالي قمنا بتعريف حلقة تطبع كلمة Harmash على سطر منفرد 3 مرات.
الكود
var i=1; do { write("Harmash\n"); i++; } while (i<=3);
سنحصل على النتيجة التالية عند التشغيل.
Harmash
Harmash
شرح الكود
الفيديو التالي يشرح طريقة عمل الحلقة do while
في المثال السابق خطوة خطوة.
تمارين حول الحلقة do while
التمرين الأول
بواسطة الحلقة do while
أكتب برنامج يجبر المستخدم على إدخال رقم إيجابي (أي أكبر من صفر) و من ثم قم بطباعة الرقم الذي أدخله.
التمرين الثاني
بواسطة الحلقة do while
أكتب برنامج يجبر المستخدم على إدخال رقم سلبي (أي أصغر من صفر) و من ثم قم بطباعة الرقم الذي أدخله.
التمرين الثالث
بواسطة الحلقة do while
أكتب برنامج يجبر المستخدم على إدخال رقم بين 1 و 20.
بعدها قم بطباعة الرقم الذي أدخله.