تعلم حلقات C++ Loops || تعلم c++ خطوة بخطوة

 

قد تكون هناك مواقف أثناء البرنامج تتطلب منك تنفيذ أمر عدة مرات. بشكل عام، يتم تنفيذ الأوامر واحدة تلو الأخرى، ويبدأ تنفيذ الأوامر من أمر الوظيفة الأولى، ثم الأمر الثاني، ثم الثالث، وهكذا. 

لغة البرمجة مجموعة متنوعة من هياكل التحكم لتنفيذ الأوامر المعقدة بسهولة. تسمح لنا

الحلقات في البرمجة بتنفيذ أمر أو مجموعة منها عدة مرات. الشكل العام للحلقة هو كما يلي:


تعلم حلقات  C++ Loops || تعلم c++ خطوة بخطوة

تقدم لغة C ++ أنواعًا مختلفة من الحلقات لتكرار العبارات الشرطية:

الصفنوع الحلقة والوصف
1حلقه while

يكرر أمرًا واحدًا أو أكثر حتى تتحقق حالة الحلقة. يتم فحص حالة الحلقة في بداية الحلقة.

2حلقه for

ينفذ الأوامر في الحلقة حتى تصبح حالة الحلقة صحيحة.

3حلقة do…while

وظيفتها هي نفسها حلقة while ، باستثناء أن حالة الحلقة يتم فحصها في النهاية.

4حلقات متداخلة

يمكنك الجمع بين أنواع مختلفة من الحلقات واستخدامها. لا يهم إذا كانت الحلقة من while أو for أو do while.


الامر while loop

يقوم أمر while loop  بتنفيذ الأوامر المحددة بشكل متكرر حتى يصبح الشرط صحيحًا.



حلقة while loop


كيفية كتابة while loop في C ++ كالتالي:

while(condition) {
statement(s);
}
C ++http://http://
نسخ


قد تكون الأوامر هنا عبارة عن جملة أو مجموعة أوامر، ويمكن أن تكون حالة الحلقة لأي تعبير طالما كانت صحيحة أي قيمة غير الصفر. تعمل الحلقة طالما أن الشرط صحيح.


عندما يصبح رهان الحلقة خاطئًا، ينتقل البرنامج إلى سطر الحلقة التالي.


النقطة الرئيسية ل while loop هي أن الحلقة قد لا تعمل أبدًا. عندما يتم فحص شرط الحلقة وتكون النتيجة خاطئة، يتم تجاهل الأوامر الموجودة داخل الحلقة ويتم تنفيذ الأمر بعد الحلقة.


#include <iostream>
using namespace std;

int main () {
// Local variable declaration:
int a = 10;
// while loop execution
while( a < 20 ) {
cout << "value of a: " << a << endl;
a++;
}

return 0;
}
C ++
نسخ

 بعد تجميع وتنفيذ الكود أعلاه، يتم عرض النتيجة التالية:

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of a: 16
value of a: 17
value of a: 18
value of a: 19


الامر for loop

للحلقة for loop وظائف مماثلة ل while loop ولكن بصيغة مختلفة. تُفضل for loop عندما يكون عدد مرات تنفيذ عبارات الحلقة معروفًا مسبقًا. تتم عملية التهيئة المتغيرة للحلقة، والشرط المراد اختباره، وزيادة / إنقاص متغير الحلقة في سطر واحد في for loop مما يوفر بنية أقصر وسهلة التصحيح للحلقة.


حلقة for loop


كيف تكتب أمر the “for” loop

إليك كيفية كتابة أمرfor loop في C ++ :

for ( init; condition; increment ) {
statement(s);
}

فيما يلي وصف كتابة for loop أعلاه:

init: في البداية ومرة ​​واحدة فقط. تسمح لك هذه الخطوة بتعريف المتغيرات للتحكم في الحلقة. لا تحتاج لوضع أوامر قبل علامة الفاصلة المنقوطة.

condition: بعد ذلك يتم التحقق من شرط الحلقة وإذا كان صحيحًا، يتم تنفيذ الأوامر داخل الحلقة، وإذا كانت خاطئة، لا يتم تنفيذ الأوامر داخل الحلقة، ويتم تمرير دفق تنفيذ البرنامج إلى الأمر بعد الحلقة.

increment: بعد تنفيذ الأمر داخل الحلقة، يتم تبديل تيار التحكم إلى الحالة الافتراضية، والتي يمكن تركها فارغة قبل الفاصلة المنقوطة، ثم تتم إضافة خطوة الحلقة.

يتم الآن فحص الشرط مرة أخرى، وإذا كان true، يتم تنفيذ عملية التكرار (الأوامر داخل الحلقة، وزيادة خطوة الحلقة، والعودة إلى حالة الحلقة)، وعندما تصبح الحالة خاطئة، تنتهي الحلقة.


كيف تكتب أمر the “for” loop


مثال

#include <iostream>
using namespace std;

int main () {
// for loop execution
for( int a = 10; a < 20; a = a + 1 ) {
cout << "value of a: " << a << endl;
}

return 0;
}
C ++
نسخ


بعد تجميع وتنفيذ الكود أعلاه، يتم عرض النتيجة التالية:


value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of a: 16
value of a: 17
value of a: 18
value of a: 19

الامر  do... While

بخلاف حلقات for and while، التي تتحقق أولاً من شرط الحلقة ، يتحقق الأمر do ... while loop من حالة الحلقة في نهاية التعليمات.

تتشابه حلقة do ... while loop مع حلقة while، فيما عدا أن تعليمات do ... while loop يتم تنفيذها مرة واحدة على الأقل.


كيف تكتب الأمر  do... While

كيف تكتب  do... While تكون الأوامر كالتالي:

do {
statement(s);
}
while( condition );

لاحظ أن العبارة الشرطية تظهر في نهاية الحلقة ، لذلك يتم تنفيذ العبارات الموجودة في الحلقة مرة واحدة قبل التحقق من الشرط.

إذا كانت حالة الحلقة true، يتم تمرير تيار الحلقة مرة أخرى إلى الأمر do، وتستمر هذه العملية حتى تصبح حالة الحلقة false.


الامر  do...While

الحلقة  do...While


#include <iostream>
using namespace std;

int main () {
// Local variable declaration:
int a = 10;

// do loop execution
do {
cout << "value of a: " << a << endl;
a = a + 1;
} while( a < 20 );

return 0;
}
نسخ

بعد تجميع وتنفيذ الكود أعلاه، يتم عرض النتيجة التالية:


value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 15
value of a: 16
value of a: 17
value of a: 18
value of a: 19

حلقات متداخلة   ++nested loops C


تعني حلقات التعشيش أنه يمكن وضع حلقة واحدة في أخرى. في برمجة C ++ ، يمكن إنشاء ما يصل إلى 265 مستوى حلقة متداخلة.


كيف تكتب nested loops


كيفية كتابة for loop متداخلة في C ++ كما يلي:

for ( init; condition; increment ) {
for ( init; condition; increment ) {
statement(s);
}
statement(s); // you can put more statements.
}

كيفية كتابة while nested loop في C ++ كالتالي:

do {
statement(s); // you can put more statements.
do {
statement(s);
} while( condition );

} while( condition );

مثال
يستخدم مثال الكود التالي for nested loop للعثور على الأعداد الأولية بين 2 و 100:

#include <iostream>
using namespace std;

int main () {
int i, j;

for(i = 2; i<100; i++) {
for(j = 2; j <= (i/j); j++)
if(!(i%j)) break; // if factor found, not prime
if(j > (i/j)) cout << i << " is prime\n";
}

return 0;
}
Copy


نتيجة الكود أعلاه كالتالي:


2 is prime
3 is prime
5 is prime
7 is prime
11 is prime
13 is prime
17 is prime
19 is prime
23 is prime
29 is prime
31 is prime
37 is prime
41 is prime
43 is prime
47 is prime
53 is prime
59 is prime
61 is prime
67 is prime
71 is prime
73 is prime
79 is prime
83 is prime
89 is prime
97 is prime

أوامر التحكم في الحلقة Loop Control Statements

أوامر التحكم في الحلقة تغير خطوات التنفيذ من تسلسلها الطبيعي. عند اكتمال تنفيذ الحلقة، يتم إتلاف جميع الكائنات والمتغيرات التي تم إنشاؤها في هذا النطاق تلقائيًا.

أوامر التحكم التالية مدعومة في C ++:


الرقمأمر التحكم وشرحه
1break statement

ينهي الحلقة أو switch statement وينقل التنفيذ إلى العبارة التي تلي الحلقة أو التبديل مباشرةً.

2continue statement

يخبر الحلقة بتجاهل بقية الأوامر وتنفيذ أمر الحلقة التالية.

3goto statement
ينقل التحكم في تنفيذ البرنامج إلى الجزء المحدد بواسطة label، وبالطبع يوصى بعدم استخدام هذا الأمر goto في البرنامج.


حلقة لا نهائية The Infinite Loop

إذا لم يكن الشرط (false) مطلقًا، تصبح الحلقة لا نهائية. نظرًا لعدم الحاجة إلى أي من التعبيرات الثلاثة للحلقة for loop، يمكنك إنشاء حلقة لا نهائية بترك التعبير الشرطي فارغًا.

#include <iostream>
using namespace std;

int main () {
for( ; ; ) {
printf("This loop will run forever.\n");
}

return 0;
}

في حالة عدم وجود عبارات شرطية، يُفترض أن الشرط صحيح. يستخدم مبرمجو C ++ الأمر 'for (؛ ؛)' لإنشاء حلقة لا نهائية.
ملاحظة: باستخدام تركيبة المفاتيح Ctrl + C، يمكنك إكمال الحلقة اللانهائية.



كلمات مفتاحية: