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;
}
...التحدي
مبتدئأُعطيت شيفرة تتلقى عددًا كمدخل، يشير إلى سرعة الرياح، وتخزّنه في متغير اسمه 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;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوصتدرّب بنفسك: مترجم C++ عبر الإنترنت