📚 عبارات التحكم البرمجية "break" و "continue"
المفاهيم الأساسية
عبارة `break`: تنهي التكرار حيث تكون موجودة.
عبارة `continue`: (مذكورة في العنوان فقط، لم يتم شرحها في محتوى هذه الصفحة).
خريطة المفاهيم
```markmap
برمجة إنترنت الأشياء باستخدام C++
أساسيات لغة C++
التعليقات (Comments)
#### التعليق في سطر واحد
- يستخدم الرمزين: //
- مثال: // this is a comment
#### التعليق متعدد الأسطر
- يستخدم الرمزين: / /
- مثال: / ... /
#### استخدامات التعليقات
- تحسين قابلية قراءة البرنامج
- تسهيل فهم وظائف البرنامج للمبرمجين والمراجعين
- جعل أجزاء من الكود غير نشطة أثناء الاختبار
المعاملات الأساسية
#### المعاملات الرياضية
- الجمع (+)
- الطرح (-)
- الضرب (*)
- القسمة (/)
- باقي القسمة (%)
##### ملاحظة
- في الأعداد الصحيحة (int): "/" لحاصل القسمة، "%" لباقي القسمة
- في الأعداد العشرية (float/double): "/" فقط لحاصل القسمة
#### معاملات الإسناد
- الإسناد (=)
- الجمع والإسناد (+=)
- الطرح والإسناد (-=)
- الضرب والإسناد (*=)
- القسمة والإسناد (/=)
- باقي القسمة والإسناد (%=)
#### المعاملات العلائقية
- يساوي (==)
- لا يساوي (!=)
- أكبر من (>)
- أصغر من (<)
- أكبر أو يساوي (>=)
- أصغر أو يساوي (<=)
#### المعاملات المنطقية
- AND المنطقية (&&)
- OR المنطقية (||)
- NOT المنطقية (!)
الطباعة والإخراج
العبارات الشرطية
#### أنواع العبارات الشرطية
- عبارة `if`
- عبارة `if... else if... else`
- عبارة `if... else if... else if...`
#### عبارة `if` البسيطة
- الصيغة: `if (condition) { // body }`
- آلية العمل:
- يتم فحص الشرط بين القوسين.
- إذا كان الشرط صائباً (True)، تُنفَّذ التعليمات داخل الأقواس `{}`.
- إذا كان الشرط خاطئاً (False)، تُتخطَّى التعليمات داخل الأقواس.
#### عبارة `if...else`
##### التركيب
if (condition) {
// block of code 1 if condition is true
}
else {
// block of code 2 if condition is false
}
##### آلية العمل
- يتم أولاً تقييم الشرط.
- إذا كان الشرط صائباً (True)، تُنفَّذ التعليمات داخل `if` وتُتخطَّى التعليمات داخل `else`.
- إذا كان الشرط خاطئاً (False)، تُتخطَّى التعليمات داخل `if` وتُنفَّذ التعليمات داخل `else`.
#### عبارة `if..else if..else`
##### التركيب
if (condition1) {
// code block 1
}
else if (condition2) {
// code block 2
}
else {
// code block 3
}
##### آلية العمل (مخطط التدفق)
- إذا كان
صواب: تنفيذ
تعليمات برمجية 1 ثم الخروج.
- إذا كان خطأ: الانتقال لفحص الشرط الثاني.
- إذا كان صواب: تنفيذ تعليمات برمجية 2 ثم الخروج.
- إذا كان خطأ: تنفيذ تعليمات برمجية 3 ثم الخروج.
##### حالات التنفيذ
###### إذا كان الشرط الأول صائباً
- تُنفَّذ مجموعة التعليمات البرمجية الأولى.
- تُتخطَّى مجموعتي التعليمات الثانية والثالثة.
###### إذا كان الشرط الأول خطأ والثاني صائباً
- تُنفَّذ مجموعة التعليمات البرمجية الثانية.
- تُتخطَّى مجموعة التعليمات البرمجية الثالثة.
###### إذا كانت كافة الشروط خطأ
- تُنفَّذ مجموعة التعليمات البرمجية الثالثة (الخاصة بـ `else`).
##### العبارات الشرطية المتداخلة
- يمكن تضمين عبارة `if` داخل مجموعة تعليمات برمجية لعبارة `if` أخرى.
- لا يُشترط أن تكون من نفس النوع.
التكرارات (Loops)
#### أنواع التكرارات
##### تكرار `for`
- الصيغة: `for (تهيئة المتغير; الشرط; معامل الزيادة) { // loop statements; }`
- آلية العمل:
1.
التهيئة: تنفذ مرة واحدة فقط قبل بدء التكرار.
2. فحص الشرط: إذا كان صواب، تُنفَّذ جمل التكرار.
3. الزيادة: تحديث قيم المتغيرات بعد تنفيذ الجمل.
4. التكرار: يستمر حتى يصبح الشرط خطأ.
##### تكرار `while`
- الصيغة: `while (condition) { // loop statements; }`
- آلية العمل:
1.
فحص الشرط أولاً.
2. إذا كان صواباً، تُنفَّذ عبارات التكرار.
3. إذا كان خطأ، يتوقف التكرار وتُتخطَّى العبارات.
##### تكرار `do...while`
- الصيغة: `do { // statement execution; } while (condition);`
- آلية العمل:
1.
تنفيذ التعليمات أولاً مرة واحدة على الأقل.
2. فحص الشرط بعد التنفيذ.
3. إذا كان الشرط صواباً، يعود لتنفيذ التعليمات مرة أخرى.
4. إذا كان خطأ، يتوقف التكرار.
#### عبارات التحكم في التكرار
##### عبارة `break`
- الوظيفة: تنهي التكرار حيث تكون موجودة.
- آلية العمل:
- عند استيفاء شرط معين داخل التكرار، يتم تنفيذ `break`.
- يخرج البرنامج فوراً من التكرار الحالي وينتقل إلى التعليمات التي تلي الحلقة.
for (init; condition; update) {
// code block 1
if (condition to break) {
break
}
// code block 2
}
// code after loop
while (condition) {
// code block 1
if (condition to break) {
break
}
// code block 2
}
// code after loop
- في التكرارات المتداخلة: إذا وُضعت داخل تكرار متداخل، فإنها تنهي التكرار الداخلي فقط.
```
نقاط مهمة
- `break` و `continue` عبارتان مفيدتان جداً عند التعامل مع جميع أنواع التكرارات (`for`، `while`، `do...while`).
- وظيفة `break` الأساسية هي إنهاء التكرار الحالي فوراً.
- يمكن استخدام `break` داخل أي نوع من التكرارات بناءً على شرط معين.
- في التكرارات المتداخلة، تؤثر `break` على الحلقة الداخلية التي توجد فيها فقط.