جملة Switch
جزء من قسم الأساسيات في رحلة C# على Coddy. الدرس 27 من 69.
عبارة switch تشبه عبارة if متعددة المسارات. وبدلًا من تقييم شرط واحد، تتحقق من قيمة variable مقابل حالات متعددة، وتنفّذ التعليمات البرمجية المرتبطة بالحالة المطابقة.
إليك البنية الأساسية لعبارة switch:
switch (variable) {
case value1:
// الكود الذي يُنفَّذ إذا كان variable يساوي value1
break;
case value2:
// الكود الذي يُنفَّذ إذا كان variable يساوي value2
break;
// ... المزيد من الحالات
default:
// الكود الذي يُنفَّذ إذا لم تتطابق أي حالة
break;
}- تتبع الكلمة المفتاحية
switchالمتغيرَ الذي تريد اختباره بين قوسين. - يمثل كل
caseقيمةً محتملة للمتغير. - يُنفَّذ الكود داخل كل
caseإذا تطابقت قيمة المتغير مع قيمة تلك الحالة.
- تُعدّ عبارة
breakبالغة الأهمية؛ إذ تخرج منswitchبعد تنفيذ حالة. ومن دونها، سينتقل التنفيذ «تلقائيًا» إلى الحالة التالية.
- حالة
defaultاختيارية ويتم تنفيذها إذا لم تتطابق أي حالة أخرى.
إليك مثالًا:
int day = 3;
string dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
// ... حالات للأيام الأخرى
default:
dayName = "Invalid day";
break;
}يمكنك أيضًا دمج حالات متعددة في حالة واحدة:
int day = 3;
string dayName;
switch (day) {
case 1:
case 2:
case 3:
dayName = "Start of week";
break;
// ... حالات للأيام الأخرى
default:
dayName = "Invalid day";
break;
}التحدي
مبتدئأنشئ برنامجًا يأخذ رقم month (1 لشهر يناير، و2 لشهر فبراير، وما إلى ذلك) ويطبع الفصل الذي ينتمي إليه. استخدم عبارة switch لتنفيذ المنطق.
الفصول والأشهر المقابلة لها هي:
- Winter: ديسمبر (12)، يناير (1)، فبراير (2)
- Spring: مارس (3)، أبريل (4)، مايو (5)
- Summer: يونيو (6)، يوليو (7)، أغسطس (8)
- Autumn: سبتمبر (9)، أكتوبر (10)، نوفمبر (11)
جرّب بنفسك
using System;
public class Program {
public static void Main(string[] args) {
int month = int.Parse(Console.ReadLine());
string season = "";
// اكتب الكود الخاص بك أدناه
Console.WriteLine(season);
}
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةالزيادة والنقصانالزيادة والنقصان اللاحقاختصارات العمليات الحسابية7أساسيات الإدخال والإخراج (Basic IO)
الإخراج الأساسيتضمين النصوص (String Interpolation)قراءة المدخلاتالتحليل (Parse)مراجعة - حتى 120مراجعة - True أو False5المعاملات - الجزء الثاني
معاملات المقارنةالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثتدرّب بنفسك: مترجم C# عبر الإنترنت