بسم الله الرحمن الرحيم
((رب اشرح لي صدري ويسر لي أمر وأحلل عقدة من لساني يفقهوا قولي))
صدق الله العلي العظيم
السلام عليكم اعضاء المنتدى الكرام تحياتي لكم أسأل الله أن تكونوا في صحة وعافية
لي مدة ليست بالقصيرة لم أشترك في المنتدى سواء بجواب لسؤال ما أو بمقال نظرا لبعض المشاغل لذا عذرا للتقصير
for loop: عبارة عن جملة برمجية متوفر في اغلب لغات البرمجة يستخدم لتكرار جملة برمجية معينة أو المرور على مجموعة من القيم لحين استيفاء شرط التكرار أي الوصول الى نهاية الـLoop حيث يتم الخروج من الحلقة التكرارية تلقائيا حين استيفاء الشرط كما بينا سابقا أو يمكن انهاء الحلقة التكرارية باستعمال جملة خروج معينة.
تتكون الـFor Loop من ثلاثة اجزاء وتأتي بالصيغة التالية:
PHP كود :
for(initial; condition; counter)
مخطط يبين عمل for-loop
الأجزاء:
1- بداية الحلقة التكرارية: تبدأ For-Loop بمتغير أولي يحمل القيمة التكرارية الأولية سواء تم استخدامها كقيمة فعلية في أي جملة برمجية أو مجرد بداية لجملة التكرار.
2- الشرط: يتم استخدامها للسيطرة على الحلقة التكرارية حيث يستمر الـFor بعمله لحين الوصول الى نهاية الشرط أي اذا كانت نتيجة الشرط (false) يتم الخروج حينها من الحلقة التكرارية ,حيث ناتج الشرط إما تكون (True or False).
3- العداد: هذا الجزء يقوم بزيادة أو نقصان مقدار المتغير الأولي (الجزء الأول في الـFor-Loop) ,عادة يتم الزيادة أو النقصان بمقدار واحد لذا من الممكن أن يتحكم المبرمج بمقدار الزيادة أو النقصان اعتمادا على المتطلبات.
أمثلة على استخدام for-loop:
PHP كود :
string [] names={"Ahmed","Sami","Ali"}
for(int i=0; i<names.Length; i++)
{
MessageBox.Show(names[i]);
{
من الممكن كتابة for-loop بعدة طرق منها:
1- كتابة المتغير الأولي خارج جملة for-loop
PHP كود :
int j = 0;
for(;j<names.Length;j++)
{
MessageBox.Show(names[j]);
}
2- كتابة جزء الشرط فقط داخل جملة for-loop
PHP كود :
int v = 0;
for(;v<names.Length;)
{
MessageBox.Show(names[v]);
v++;
}
3- كتابة for-loop بدون اجزائها وهي بالنتيجة ستكون حلقة تكرارية لا نهائية
PHP كود :
for (; ; )
{
//Statements
}
4- زيادة العداد بمقدار 2 أول أكثر تكون بالطريقة التالية:
PHP كود :
for (int h = 0; h < names.Length; h += 2)
{
MessageBox.Show(names[h]);
}
5- من الممكن كتابة أكثر من متغير وأكثر من شرط داخل for-loop
PHP كود :
int[] ints = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (int x = 0, y = ints.Length - 1; (x < ints.Length && y >= 0); x++, y--)
{
label1.Text+=(x.ToString() + " " + y.ToString());
}
ملاحظة: في حالة استخدام اكثر من متغير داخل جملة for-loop يجب أن تكون المتغيرات المستخدمة من نفس النوع.
6- استخدام جملتي (continue, break) داخل جملة for-loop
-break:
PHP كود :
int[] ints = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (int i = 0; i < ints.Length; i++)
{
if (ints[i] == 5) break;
label1.Text += ints[i];
}//output: 1234
-continue:
PHP كود :
int[] ints = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
for (int i = 0; i < ints.Length; i++)
{
if (ints[i] % 2 == 0) continue;//Odd numbers
label1.Text += ints[i];
}//output: 13579
أتمنى أنكم استفدتم من المقالة ولو بشيء قليل
تحياتي لكم