التكرار باستخدام For || الجزء الأول

توضيح آلية استخدامها و أمثلة عليها

Zero To 0neمنذ 5 سنوات

بسم الله الرحمن الرحيم

 

مفهوم التكرار في For :

في أكثر من لغة برمجة تستخدم نفس   Syntax، لكن في لغة Python  تختلف قليلاً بينما في لعة C++ و Java  متماثلة.

في هذا المقال سنتطرق لآلية عمل For  في Java .. هيا ننطلق و نبدأ رحلتنا ؛

 


for ( //CountVariable ; //StopCondition ; //toMovingloop ) {  //Code  }

 

ينقسم لثلاثة أجزاء :

  • الجزء الأول لإنشاء و تعريف المتغير المستخدم لتحريك loop .
  • الجزء الثاني لوضع الشرط الذي يجعل التكرار يتوقف و لا ينفذ ما بداخله.
  • الجزء الثالث و الأخير لتحريك loop  باستخدام المتغير.

 

و يستعمل عند تكرار أمر ما مع اختلاف بسيط مثلاً في العدد المخل أو تسلسل رقم ما، فهو يساعد في اختصار عدد الأسطر المكتوبة للكود و يكون أسهل للقراءة و التتبع فيما بعد.

 

مثال ذلك:

لنقم بكتابة برنامج يقوم بطباعة الأعداد من 1 إلى 10 مثلاً !

بما أننا سنبدأ بالعد من العدد واحد فإن:

for ( int z = 1 ;   ;   ) { }

 

ستكون قيمة العداد بـ 1 ،

و شرط التوقف بما أننا نريد العدد 10 هو العدد الآخير الذي نريد طباعته، فإننا سنستمر بالطباعة حتى العدد 10 فإن كان العدد 11 فإنه يقوم بالخروج من loop  و تنفيذ الأوامر التالية من الكود خارج loop ، نكتب الشرط كالتالي:

for ( int z = 1 ; z <= 10 ;    ) {  }

 

هذا الشرط يدل على إن كان المتغير z   أصغر من أو يساوي 10 يمكنك الدخول لحلقة التكرار و تنفيذ الأوامر الموجودة فيه.

 

و الجزء الأخير هو ما يتعلق بمحرك loop الذي يساعد في تحقيق شرط التوقف و الخروج من حلقة التكرار، الأمر الاغلب في كتابته هو z++ التي تدل على z = z + 1  :

for ( int z = 1 ; z <= 10 ; z++ ) {   }

 

و ما داخل الحلقة هو أمر الطباعة:

for ( int z = 1; z <= 10 ; z++ ) 
{
   System.out.println( z );
}

 

قبل أن تكمل القراءة خمن ما شكل المخرجات من هذا الكود و اكتبه على ورقة ..

 

من هذا الكود يكم شكل المخرجات كالتالي:

1
2
3
4
5
6
7
8
9
10

 

هذه الفكرة الأساسية من عمل for loop و من ذلك يمكننا التلاعب في الابتكار في استخدامها، قبل أن استرسل في اشكال استخدامها الأخرى أود أن أنوه على أغلب الأخطاء التي نقع فيها عند استخدامها:

- التكرار اللانهائي ما يسمى بـ ( infint loop ) ، و هو طبعاً خطأ منطقي في أننا لم نحدد بشكل دقيق أمر الوقوف للتكرار فيستمر في الحلقة دون الخروج منها إلى المالانهاية.

 

يمكننا استخدام ( nested loop ) أي loop داخل  loop آخر، غالباً تستخدم لرسم شكل ما أو لـ 2D array ، التكرار الخارجي للعامود و التكرار الداخلي للصف ..

مثال على nested loop :

for ( int i = 0 ; i < 4 ; i++ )
{
    for ( int j = 1 ; j < 3 ; j++ )
        System.out.println("^");
}

 

 فما الشكل الناتج عن الكود السابق؟ من دون استخدام compiler كيف يمكنك تتبع هذا الكود و معرفة مخرجاته؟

هذا ما سنعرفه بإذن الله في المقال القادم ... دمتم بخير :)

 

كلمات دليلية: for loop
0
إعجاب
5184
مشاهدات
0
مشاركة
1
متابع

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !