If - Else
جزء من قسم Fundamentals في رحلة C++ على Coddy — الدرس 28 من 74.
تسمح لنا if بتنفيذ كود معين إذا تحقق شرط ما، ولكن ماذا لو أردنا تنفيذ شيء آخر إذا لم يتحقق الشرط؟
لهذا الغرض لدينا جملة else:
int age = 15;
std::string status = "None";
if (age >= 18) {
status = "Adult";
} else {
status = "Young";
}في المثال أعلاه، age أصغر من 18 مما يعني أنه يدخل في كود else و status سيحتوي على "Young".
يمكننا حتى جعل الأمر أكثر عمقاً باستخدام جملة else if:
int age = 68;
std::string status = "None";
if (age < 18) {
status = "Young";
} else if (age >= 18 && age <= 65) {
status = "Adult";
} else {
status = "Old";
}هنا يتم التحقق مما إذا كان age أصغر من 18، وإذا لم يكن كذلك فسيستمر إلى الشرط التالي ويتحقق مما إذا كان age بين 18 و 65. وإذا لم يتم استيفاء هذا الشرط أيضاً، فسيقوم بتعيين status إلى "Old".
يمكننا إضافة أي عدد نريده من جمل else if:
if (condition1) {
code;
} else if (condition2) {
code;
} else if (condition3) {
code;
}
...التحدي
مبتدئلقد تم تزويدك بكود يستقبل كمدخل رقماً يشير إلى سرعة الرياح ويقوم بتخزينه في متغير يسمى wind.
ملاحظة: سنتعلم في الدروس القادمة كيفية الحصول على مدخلات من المستخدم، حالياً فقط لا تلمس السطر الأول.
مهمتك هي تهيئة المتغير status بناءً على الشروط التالية:
"Calm"إذا كانwindأصغر من8،"Breeze"إذا كانwindبين8و31(بما في ذلك 8 و 31)."Gale"إذا كانwindبين32و63(بما في ذلك 32 و 63)"Storm"خلاف ذلك
تحقق من حالات الاختبار لرؤية جميع المدخلات والمخرجات المتوقعة
ورقة مرجعية
استخدم else لتنفيذ الكود عندما لا يتم استيفاء شرط if:
if (age >= 18) {
status = "Adult";
} else {
status = "Young";
}استخدم else if للتحقق من شروط متعددة:
if (age < 18) {
status = "Young";
} else if (age >= 18 && age <= 65) {
status = "Adult";
} else {
status = "Old";
}يمكنك ربط عدة جمل else if:
if (condition1) {
code;
} else if (condition2) {
code;
} else if (condition3) {
code;
}جرّب بنفسك
#include <iostream>
int main() {
int wind;
std::cin >> wind; // لا تغير هذا السطر
std::string status = "unset";
// اكتب الكود الخاص بك أدناه
// لا تغير السطر أدناه
std::cout << "status = " << status;
return 0;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوص