دالة الإحتمالات الشرطية switch في لغة دارت Dart 6 - Programmer Tech
Dart and flutter

دالة الإحتمالات الشرطية switch في لغة دارت Dart 6

دالة الإحتمالات الشرطية switch

دالة الإحتمالات الشرطية switch في لغة دارت

عبارة switch هي دالة الاحتمالات الشرطية و تستخدم عندما يكون لدينا عدة احتمالات تعتمد على فحص قيمة معينة, على سبيل المثال لدينا المعدل و حسب المعدل تكون الاحتمالات, أي نستخدمها في حال كنا نريد أن نختبر قيمة متغير ما مع لستة من الاحتمالات, و إذا تساوت هذه القيمة مع أي أحتمال منها ستتنفذ الأوامر التي وضعناها في هذا ألاحتمال المحدد و كل إحتمال نقوم بوضعه يسمى case.

في لغة دارت (Dart)، لا توجد دالة محددة مسماة “الإحتمالات الشرطية switch”. ومع ذلك، يمكن استخدام البنية التحكمية “switch” في دارت لتنفيذ تعليمات متعددة بناءً على قيمة معينة. لتحقيق الإحتمالات الشرطية، يمكنك استخدام البيانات الشرطية (conditional statements) داخل حالات “switch”. هناك عدة طرق لتحقيق ذلك في دارت. هذا مثال بسيط يوضح كيفية استخدام البيانات الشرطية داخل switch:

الشكل العام لعبارة switch في Dart

switch(variable)
    {
     case value:
     statement
         break;
     default:
     statement
}
  1. كلمة switch تعني قم بإختبار قيمة المتغير الموجود بين القوسين, و ما بين القوسين هو المتغير الذي نريد إختبار قميته, ويسمح لنا بإختبار المتغيرات الآتية (int – byte – short – char).
  2. كلمة case تعني الحالة, و value تعني القيمة.
  3. statement تعني الأوامر.
  4. كلمة default تعني إفتراضياً و هي نفس فكرة الجملة else. هذه الجملة تتنفذ فقط في حال لم تتنفذ أي احتمال case موجود في الجملة switch و لذلك نضعها في نهاية الإحتمالات.
  5. و كلمة break لسنا بحاجة إلى وضعها بعد default لأن البرنامج سيتوقف بجميع الأحوال عندها.

مثال

void main() {
  String fruit = 'apple';
  
  switch (fruit) {
    case 'apple':
      print('تفاحة');
      break;
      
    case 'banana':
      print('موزة');
      break;
      
    case 'orange':
      print('برتقالة');
      break;
      
    default:
      print('غير معروف');
  }
}

في هذا المثال، يتم استخدام switch لفحص قيمة متغير “fruit”. في حالة تطابق القيمة مع إحدى الحالات، سيتم تنفيذ التعليمات الموجودة داخلها. يتم استخدام البيان “break” للخروج من switch بعد تنفيذ الحالة المطابقة. إذا لم يتم العثور على تطابق، سيتم تنفيذ الحالة “default”. في هذا المثال، إذا كانت قيمة “fruit” هي ‘apple’، سيتم طباعة ‘تفاحة’.

مثال 1:

استخدام switch للتحكم في قيمة متغير الأيام:

void main() {
  String day = 'الأحد';

  switch (day) {
    case 'السبت':
      print('يوم السبت');
      break;
    case 'الأحد':
      print('يوم الأحد');
      break;
    case 'الاثنين':
      print('يوم الاثنين');
      break;
    case 'الثلاثاء':
      print('يوم الثلاثاء');
      break;
    case 'الأربعاء':
      print('يوم الأربعاء');
      break;
    case 'الخميس':
      print('يوم الخميس');
      break;
    case 'الجمعة':
      print('يوم الجمعة');
      break;
    default:
      print('يوم غير معروف');
  }
}

مثال 2:

استخدام switch للتحكم في قيمة متغير الشهور:

void main() {
  int month = 9;

  switch (month) {
    case 1:
      print('يناير');
      break;
    case 2:
      print('فبراير');
      break;
    case 3:
      print('مارس');
      break;
    case 4:
      print('أبريل');
      break;
    case 5:
      print('مايو');
      break;
    case 6:
      print('يونيو');
      break;
    case 7:
      print('يوليو');
      break;
    case 8:
      print('أغسطس');
      break;
    case 9:
      print('سبتمبر');
      break;
    case 10:
      print('أكتوبر');
      break;
    case 11:
      print('نوفمبر');
      break;
    case 12:
      print('ديسمبر');
      break;
    default:
      print('شهر غير معروف');
  }
}

هذه هي بعض الأمثلة على كيفية استخدام بنية التحكم switch في لغة دارت. يمكن استخدامها للتحكم في تنفيذ التعليمات بناءً على قيمة معينة وتحقيق الإحتمالات الشرطية.

مثال 3:

استخدام switch للتحكم في قيمة متغير الأشكال الهندسية:

void main() {
  String shape = 'مربع';

  switch (shape) {
    case 'مربع':
      print('هذا مربع');
      break;
    case 'مثلث':
      print('هذا مثلث');
      break;
    case 'دائرة':
      print('هذه دائرة');
      break;
    case 'مستطيل':
      print('هذا مستطيل');
      break;
    default:
      print('شكل غير معروف');
  }
}

مثال 4: استخدام switch للتحكم في قيمة متغير الأعمار:

void main() {
  int age = 25;

  switch (age) {
    case 0:
      print('رضيع');
      break;
    case 1:
    case 2:
      print('طفل صغير');
      break;
    case 3:
    case 4:
    case 5:
      print('طفل');
      break;
    case 6:
    case 7:
    case 8:
    case 9:
    case 10:
      print('طفل كبير');
      break;
    case 11:
    case 12:
    case 13:
    case 14:
      print('مراهق');
      break;
    default:
      print('بالغ');
  }
}

هذه بعض الأمثلة الإضافية على كيفية استخدام بنية التحكم switch في لغة دارت للتحكم في مجموعة متنوعة من القيم وتنفيذ التعليمات المناسبة بناءً على القيمة المحددة. يمكنك تعديل هذه الأمثلة وفقًا لاحتياجاتك الخاصة.

هل يمكنني استخدام switch للتحكم في قيم غير محددة مسبقًا؟

في لغة دارت (Dart)، بنية التحكم switch تتطلب قيم محددة مسبقًا للتحكم في تنفيذ التعليمات. لا يمكن استخدامها مباشرة للتحكم في قيم غير محددة مسبقًا.

ومع ذلك، يمكن استخدام القيمة “default” في بنية التحكم switch للتحكم في حالة عدم تطابق القيم المحددة مسبقًا. يمكنك استخدامها للتعامل مع الحالات غير المعروفة أو غير المتوقعة. في الشرط الافتراضي، يمكنك تنفيذ التعليمات المناسبة لمعالجة هذه الحالة.

إليك مثال يوضح استخدام الشرط الافتراضي في بنية التحكم switch للتحكم في قيم غير محددة مسبقًا:

void main() {
  String fruit = 'بطيخ';

  switch (fruit) {
    case 'تفاحة':
      print('تفاحة');
      break;
    case 'موزة':
      print('موزة');
      break;
    case 'برتقالة':
      print('برتقالة');
      break;
    default:
      print('غير معروف');
  }
}

في هذا المثال، إذا لم تتطابق قيمة المتغير “fruit” مع أي من القيم المحددة مسبقًا (تفاحة، موزة، برتقالة)، فسيتم تنفيذ الشرط الافتراضي وسيتم طباعة “غير معروف”. يمكنك استخدام هذا النمط للتحكم في قيم غير محددة مسبقًا واتخاذ إجراءات مناسبة حسب الحالة.

Ahmedkaissar

من مصر من محافظة الجيزة مبرمج ويب و خبير أمن معلومات محب للتقنية و الأمن المعلوماتي مدرب للغات "Python,html, css, php, js, laravel"
زر الذهاب إلى الأعلى