Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

جملة 'switch'

جزء من قسم Fundamentals في رحلة Dart على Coddy — الدرس 36 من 94.

توفر جملة switch في لغة Dart بديلاً أكثر ترتيباً لجمل if-else المتعددة عند التحقق من متغير مقابل قيم مختلفة.

void main() {
  String grade = 'B';
  
  switch (grade) {
    case 'A':
      print('Excellent performance!');
      break;
    case 'B':
      print('Good performance!');
      break;
    case 'C':
      print('Average performance.');
      break;
    case 'D':
      print('Below average performance.');
      break;
    default:
      print('Invalid grade.');
      break;
  }
}

عند التشغيل، يخرج: Good performance!

challenge icon

التحدي

سهل

أنشئ برنامجاً يحدد درجة الطالب بناءً على نتيجة امتحانه باستخدام جملة switch:

  1. قم بالتصريح عن متغير صحيح (integer) باسم examScore بقيمة 85
  2. أنشئ متغيراً نصياً (string) باسم grade لتخزين الدرجة الحرفية
  3. استخدم جملة switch مع القواعد التالية:
    • إذا كانت examScore بين 90 و 100 (شاملة)، قم بتعيين grade إلى "A"
    • إذا كانت examScore بين 80 و 89 (شاملة)، قم بتعيين grade إلى "B"
    • إذا كانت examScore بين 70 و 79 (شاملة)، قم بتعيين grade إلى "C"
    • إذا كانت examScore بين 60 و 69 (شاملة)، قم بتعيين grade إلى "D"
    • لأي درجة أخرى، قم بتعيين grade إلى "F"
  4. اطبع النتيجة بهذا التنسيق تماماً: Score: 85, Grade: B

ملاحظة: ستحتاج إلى استخدام القسمة الصحيحة (integer division) لتحويل الدرجة إلى نطاق يعمل مع switch.

ورقة مرجعية

يوفر بيان switch في Dart بديلاً أنظف لبيانات if-else المتعددة عند التحقق من متغير مقابل قيم مختلفة.

switch (variable) {
  case 'value1':
    // الكود المراد تنفيذه
    break;
  case 'value2':
    // الكود المراد تنفيذه
    break;
  default:
    // الكود للحالات غير المتطابقة
    break;
}

يجب أن تنتهي كل حالة ببيان break لمنع الانتقال التلقائي للحالة التالية (fall-through). تتعامل الحالة default مع القيم التي لا تطابق أي حالة محددة.

String grade = 'B';

switch (grade) {
  case 'A':
    print('Excellent performance!');
    break;
  case 'B':
    print('Good performance!');
    break;
  default:
    print('Invalid grade.');
    break;
}

جرّب بنفسك

void main() {
  // قم بالتصريح عن متغير examScore هنا
  int examScore = 85;
  
  // قم بالتصريح عن متغير grade هنا
  String grade;
  
  // استخدم جملة switch لتحديد التقدير

  
  // اطبع النتيجة
  print("Score: $examScore, Grade: $grade");
}
quiz iconاختبر نفسك

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

جميع دروس Fundamentals