Menu
CoddyTech

If - Else

جزء من قسم الأساسيات في رحلة 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";
}

هنا يتحقق مما إذا كان العمر أقل من 18، وإذا لم يكن كذلك فسينتقل إلى الشرط التالي ويتحقق مما إذا كان العمر بين 18 و65. وإذا لم يتحقق هذا الشرط أيضًا، فسيعيّن status إلى "Old".

يمكننا إضافة أي عدد نريده من عبارات else if:

if (condition1) {
    code;
} else if (condition2) {
    code;
} else if (condition3) {
    code;
}
...
challenge icon

التحدي

مبتدئ

أُعطيت شيفرة تتلقى عددًا كمدخل، يشير إلى سرعة الرياح، وتخزّنه في متغير اسمه wind.

ملاحظة: سنتعلم في الدروس القادمة كيفية تلقي المدخلات من المستخدم، لذا لا تلمس السطر الأول حاليًا.

 

مهمتك هي تهيئة المتغير status بناءً على الشروط التالية:

  • "Calm" إذا كانت قيمة wind أصغر من 8،
  • "Breeze" إذا كانت قيمة wind بين 8 و31 (بما في ذلك 8 و31).
  • "Gale" إذا كانت قيمة wind بين 32 و63 (بما في ذلك 32 و63)
  • "Storm" في غير ذلك

تحقق من حالات الاختبار للاطلاع على جميع المدخلات والمخرجات المتوقعة

جرّب بنفسك

#include <iostream>

int main() {
    int wind;
    std::cin >> wind; // لا تغيّر هذا السطر
    std::string status = "unset";
    // اكتب الشيفرة الخاصة بك أدناه
    
    
    // لا تغيّر السطر أدناه
    std::cout << "status = " << status;
    return 0; 
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم C++ عبر الإنترنت