جمل If - Else المتداخلة
جزء من قسم Fundamentals في رحلة C على Coddy — الدرس 31 من 63.
يمكننا تداخل جمل if-else داخل بعضها البعض. يتيح لنا هذا إنشاء هياكل اتخاذ قرار هرمية.
على سبيل المثال:
if (age > 18) {
if (hasLicense) {
printf("You can drive");
} else {
printf("Get a license first");
}
} else {
printf("Too young to drive");
}يمكن أن يكون متداخلاً بشكل لا نهائي:
if (condition1) {
if (condition2) {
if (condition3) {
// إذا كانت condition1 و condition2 و condition3 صحيحة
}
}
}التحدي
سهلقم بإنشاء برنامج يتحقق مما إذا كان بإمكان شخص ما ركوب الأفعوانية (rollercoaster). المتطلبات هي:
- يجب أن يكون العمر 12 عاماً على الأقل
- يجب أن يكون الطول أكثر من 150 سم
- إذا استوفوا كلا الشرطين ولكن كان عمرهم أقل من 15 عاماً، فهم بحاجة إلى إشراف شخص بالغ
اطبع هذه الرسائل تماماً لكل حالة:
- إذا كان صغيراً جداً:
Sorry, you are too young - إذا لم يكن طويلاً بما يكفي:
Sorry, you are not tall enough - إذا كان أقل من 15 عاماً ولا يوجد مرافق بالغ:
Sorry, you need an adult with you - إذا كان أقل من 15 عاماً مع وجود مرافق بالغ:
You can ride with adult supervision! - إذا كان عمره 15 عاماً أو أكثر وطويلاً بما يكفي:
You can ride by yourself!
ورقة مرجعية
يمكنك تداخل جمل if-else داخل بعضها البعض لإنشاء هياكل اتخاذ قرار هرمية:
if (age > 18) {
if (hasLicense) {
printf("You can drive");
} else {
printf("Get a license first");
}
} else {
printf("Too young to drive");
}يمكن إجراء التداخل بشكل غير محدود:
if (condition1) {
if (condition2) {
if (condition3) {
// إذا كانت condition1 و condition2 و condition3 صحيحة
}
}
}جرّب بنفسك
#include <stdio.h>
int main() {
int age, height;
int hasAdult;
scanf("%d %d %d", &age, &height, &hasAdult); // لا تغير هذا السطر
// اكتب كودك بالأسفل
return 0;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4تدفق التحكم
جملة Ifجملة If - Elseجملة Else-Ifجملة Switch Caseالعامل الشرطي الثلاثيتحدي المراجعةجمل If - Else المتداخلة2المتغيرات
أنواع البياناتالأعداد الصحيحة (Integer)الأعداد العشرية (Float - Double)المحارف (Characters)القيم المنطقية (Booleans)الثوابتأساسيات printfقواعد تسمية المتغيراتتحويل الأنواع (Type Casting) - الجزء 1تحويل الأنواع (Type Casting) - الجزء 2تحدي المراجعة3المعاملات
المعاملات الحسابيةمعامل باقي القسمةالزيادة والنقصانمعاملات الإسنادالمعاملات العلائقيةالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيالمعاملات المنطقية - الجزء الثالثتحدي المراجعة