• 0

ماهو الفرق بين حلقتي التكرار while وَ for؟

أعلم أن كلا الحلقتين للتكرار، for loop وَ While loop  لكن ما أريد معرفته هو سبب وجود الثانية إذا كانت إحداهما تفي بالغرض؟ ماهو الفرق بين استعمال كل منهما؟ هل هما متشابهتان؟

تمّ تعديل بواسطة Badraoui

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

نعم يوجد اختلاف بين حلقتي التكرار، فـ For loop تعتمد بشكل أساس على وجود عداد يتم في كل حلقة أخذ قيمة، سواء بشكل تصاعدي أو تنازلي، مثلاً:

for (int x = 0; x < 100; x++) {
   //سيتكرر هذا الأمر مئة مرة 
  //  سيأخذ جميع القيم من 0 إلى 99xأي أن المتغير 
// عند القيمة 99 سينفذ الكود الموجود داخل الحلقة ثم تنتهي حلقة التكرار هاته
}

في حين أن حلقة  while Loop رهينة بتحقق شرط معين، ولا يمكن أن تتكرر إلا حين تحقق هذا الشرط -أو تتحقق مرة واحدة فقط-،وهي تكتب على شكل كتابتين، مثال:

  • الكتابة الأولى:
int count = 0;
while (count < 100) {
  //count<100 لتتكرر الحلقة يجب تحقق الشرط أعلاه 
// count ثم تضاف قيمة إلى العداد 
  count++;
}
  • الكتابة الثانية:
int count=0;
do {
  //تنجز حلقة مرة ثم يتم التحقق من الشرط بعد ذلك
count+;
} while (count<100); 

والفرق بين نوعي while واضح، حيث أن النوع الأول يستلزم بالأساس تحقق الشرط للدخول للحلقة، في حين أن النوع الثاني تنجز الحلقة الأولى ليتبعها التحقق من الشرط.

والفرق بين for و while هو أن لكل منهما استعمالاته الخاصة، حيث أن for غالبا تستعمل في حال كانت قيمة العداد معروفة ونهائية، أما while تستعمل في الحالات التي يكون العداد غير محدد ويصعب تحديد مكان توقفه.

*ملاحظة: الأمثلة السابقة بلغة C.

Loops

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن