الدرس الرابع من دورة دروس تعليم البرمجة بلغة السي شارب .نت C#.Net الدوال الشرطية الجزء الثاني
الدالة الشرطية switch تشبه كثيرا الدالة if الا انها تعتمد على الحالات Case لتنفيذ العمليات.
مثال عن الدالة switch لاختيار اللون:
اختر اللون
الحالة 1: اللون الأبيض.
الحالة2: اللون الأزرق.
الحالة 3: اللون الأخضر.
في
هذا المثال اذا اخترنا الرقم 1 سيكون اللون أبيض و اذا اخترنا الرقم 2
سيكون اللون أزرق و هكذا... أما اذا اخترنا رقما آخر لا يوجد في القائمة
مثلا الرقم 7 او 11 فانه سيتم اختيار اللون الافتراضي و الذي هو اللون
الأصفر.
كيف تكتب الدالة Switch:
switch (اللون ){
case 1 : اللون الأبيض
break;
case 2: اللون الأزرق
break;
default : اللون الأصفر
break;
}
الكلمة Break تستعمل للفصل بين الحالات.
Default هي الحالة الإفتراضية أي اذا كان الرقم الذي تم ادخاله لا يوجد في الحالات السابقة ، و التي في مثالنا هذا هي 1 و 2 اذا أدخلنا رقمنا آخر غيرهم فإن الحالة ستكون مباشرة اللون الأصفر.
مثال برمجي عندما يقوم المستخدم باختيار رقم يقوم البرنامج بإظهار اليوم المقابل له في الأسبوع
مثال بالدالة IF:
Console.WriteLine(" Choose a Number");
day = short.Parse((Console.ReadLine()));
if (day == 1) Console.WriteLine("{0} day is Saturday ",day);
else if (day == 2) Console.WriteLine("{0} day is Sunday ",day);
else if (day == 3) Console.WriteLine("{0} day is Monday ",day);
else if (day == 4) Console.WriteLine("{0} day is Tuesday ",day);
else if (day == 5) Console.WriteLine("{0} day is Wednesday ",day);
else if (day == 6) Console.WriteLine("{0} day is Thursday ",day);
else if (day == 7) Console.WriteLine("{0} day is Friday ",day);
else Console.WriteLine("{0} is not a Valid Day ", day);
Console.ReadLine();
نفس المثال بالدالة Switch :
short day;
Console.WriteLine(" Choose a Number");
day = short.Parse((Console.ReadLine()));
switch (day)
{
case 1: Console.WriteLine("{0} day is Saturday ", day);
break;
case 2: Console.WriteLine("{0} day is Sunday ",day);
break;
case 3: Console.WriteLine("{0} day is Monday ",day);
break;
case 4: Console.WriteLine("{0} day is Tuesday ",day);
break;
case 5: Console.WriteLine("{0} day is Wednesday ",day);
break;
case 6: Console.WriteLine("{0} day is Thursday ",day);
break;
case 7: Console.WriteLine("{0} day is Friday ",day);
break;
default: Console.WriteLine("{0} is not a Valid Day ", day);
break;
}
Console.WriteLine(" Choose a Number");
day = short.Parse((Console.ReadLine()));
switch (day)
{
case 1: Console.WriteLine("{0} day is Saturday ", day);
break;
case 2: Console.WriteLine("{0} day is Sunday ",day);
break;
case 3: Console.WriteLine("{0} day is Monday ",day);
break;
case 4: Console.WriteLine("{0} day is Tuesday ",day);
break;
case 5: Console.WriteLine("{0} day is Wednesday ",day);
break;
case 6: Console.WriteLine("{0} day is Thursday ",day);
break;
case 7: Console.WriteLine("{0} day is Friday ",day);
break;
default: Console.WriteLine("{0} is not a Valid Day ", day);
break;
}
مثال آخر بالدالة Switch:
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string name;
Console.WriteLine("Enter Your Name :");
name = Console.ReadLine();
switch (name)
{
case "Ahmed" : Console.WriteLine("Welcome Ahmed ") ;
break;
case "Ali" : Console.WriteLine("Welcome Ali");
break;
default: Console.WriteLine("I don't know who you are!! ") ;
break;
}
Console.ReadLine();
}
}
}
Console.WriteLine("Enter Your Name :");
name = Console.ReadLine();
switch (name)
{
case "Ahmed" : Console.WriteLine("Welcome Ahmed ") ;
break;
case "Ali" : Console.WriteLine("Welcome Ali");
break;
default: Console.WriteLine("I don't know who you are!! ") ;
break;
}
Console.ReadLine();
}
}
}
في هذا البرنامج اذا تم ادخال الإسم Ahmed ستظهر لك رسالة Welcome Ahmed
و اذا تم ادخال الإسم Ali ستظهر لك رسالة Welcome Ali
اذا تم ادخال أي اسم آخر ستظهر لك هذه الرسالة I don't know who you are!!
ملاحظة: الحروف الكبيرة لا تساوي الصغيرة Ahmed لا يساوي ahmed .
بارك الله فيك أخي أحمد وجعله الله في ميزان حسناتك يوم القيامة واصل أخي مشكور
ردحذفو فيك بارك الله و جعل الله مأواك الفردوس الأعلى يا رب
حذفبارك الله فيك اخي انا لا احب استخدام Switch
ردحذفاستخدم الـ if فقط حتى في ++c استخدم فقط الـ if بصراحة درس ممتع
جاري الانتقال للدرس التالي .. تحياتي الله لا يحرمنا منك اخي الحبيب
تعلمت منك ... أشكرك سيدى الفاضل
ردحذف