الانتقال إلى المحتوى الرئيسي

مبدأ تشغيل حالة التبديل: شرح مفصل

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

بناء جملة بيان حالة التبديل كما يلي: يتبع الكلمة الرئيسية للتبديل المتغير الذي يتم فحصه ، متبوعا بكتلة من التعليمات البرمجية تحتوي على العديد من خيارات التنفيذ المميزة بالكلمة الرئيسية للحالة. عندما تتطابق قيمة المتغير مع قيمة أحد الخيارات ، يتم تنفيذ الرمز المحدد بعد هذا الخيار. في حالة عدم وجود تطابقات ، يتم تنفيذ رمز الكتلة الافتراضي.

بيان حالة التبديل يختلف عن بيان إذا-آخر في أنه يتحقق فقط من المساواة في قيمة متغير مع الخيارات التي يتم التحقق منها. لا يمكن التحقق من عدم المساواة أو الشروط الأخرى. يمكن أن يكون عدد الخيارات أيا ويمكن أن يكون إما أرقاما أو رموزا أو سلاسل.

بيان حالة التبديل مفيد في الحالات التي تحتاج إلى التحقق من متغير لمجموعة من القيم الممكنة ، وإلا سيكون لديك لاستخدام العديد من إذا-آخر إذا البيانات بالتتابع. يجعل الكود أكثر قابلية للقراءة وصغرا ، ويتجنب أيضا الحسابات المفرطة عند التحقق من الظروف.

  1. كيف تعمل حالة التبديل ولماذا هناك حاجة إليها
  2. بناء الجملة والقواعد الأساسية لاستخدام حالة التبديل
  3. أمثلة على تعبيرات حالة التبديل البسيطة
  4. أمثلة على تعبيرات حالة التبديل باستخدام المشغلين
  5. مزايا وعيوب استخدام حالة التبديل
  6. متى يكون من الأفضل استخدام علبة التبديل ، ومتى يكون من الأفضل استخدام تصميمات أخرى
  7. طرق بديلة لتنفيذ حالة التبديل
  8. أمثلة عملية لاستخدام حالة التبديل في لغات البرمجة المختلفة
  9. سؤال وجواب
  10. كيف تعمل حالة التبديل?
  11. في أي الحالات يجب أن أستخدم حالة التبديل?
  12. كيف تختلف حالة التبديل عن بيان إذا كان آخر?
  13. كيف يمكنني إضافة شرط افتراضي إلى حالة التبديل?
  14. هل من الممكن استخدام حالات متعددة لإجراء واحد في حالة التبديل?

كيف تعمل حالة التبديل ولماذا هناك حاجة إليها

حالة التبديل هو بناء في لغة البرمجة التي تسمح لك لتنفيذ كتلة معينة من التعليمات البرمجية اعتمادا على قيمة متغير أو التعبير.

الغرض الرئيسي من حالة التبديل هو استبدال العديد من العبارات الشرطية المتتالية ، مما يجعل الكود أكثر قابلية للقراءة وصغرا وكفاءة.

يتكون تصميم علبة التبديل من الأجزاء التالية:

  1. التعبير: هذا متغير أو قيمة يتم تطبيق عبارات التحقق من الحالة عليها.
  2. الحالات: هذه هي كتل من التعليمات البرمجية التي يتم تنفيذها عندما تتوافق قيمة التعبير مع قيمة حالة معينة. كل حالة عبارة عن كلمة رئيسية للحالة متبوعة بقيمة أو متغير.
  3. بيان كسر: يستخدم لوقف تنفيذ التعليمات البرمجية داخل القضية والانتقال إلى التعليمات التالية بعد كتلة حالة التبديل.
  4. الحالة الافتراضية: هذه كتلة من التعليمات البرمجية يتم تنفيذها إذا لم تتطابق أي من الحالات.

مبدأ تشغيل حالة التبديل هو كما يلي:

  1. تتم مقارنة التعبير في كتلة التبديل مع قيم الحالات بدورها ، بدءا من الأولى.
  2. عندما تتطابق قيمة التعبير مع قيمة الحالة ، يتم تنفيذ كتلة التعليمات البرمجية المقابلة لهذه الحالة.
  3. بعد الانتهاء من تنفيذ كتلة التعليمات البرمجية ، يقاطع بيان الفاصل تنفيذ حالة التبديل ويستمر البرنامج في التنفيذ مباشرة بعد كتلة التبديل.
  4. إذا تم التحقق من جميع قيم الحالة ولا تتطابق مع التعبير ، فسيتم تنفيذ كتلة رمز الحالة الافتراضية.

يمكن استخدام علبة التبديل في مجموعة متنوعة من المهام ، على سبيل المثال:

  • قائمة اختيار الخيارات
  • معالجة أوامر المستخدم
  • نوع البيانات تحويل البيانات
  • التحليل
  • وأكثر من ذلك بكثير

المزايا الرئيسية لاستخدام حالة التبديل بدلا من بنيات متعددة إذا كان آخر:

  • يصبح الرمز أكثر وضوحا وإيجازا.
  • تم تحسين أداء وكفاءة تنفيذ البرنامج.
  • يمكن للمبرمج تعيين إجراءات مختلفة لقيم التعبير المختلفة ، مما يجعل حالة التبديل أداة مرنة في تطوير البرمجيات.

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

بناء الجملة والقواعد الأساسية لاستخدام حالة التبديل

حالة التبديل هو بناء لغة البرمجة التي تسمح لك لتنفيذ إجراءات مختلفة اعتمادا على قيمة متغير أو التعبير. وغالبا ما تستخدم لتحل محل سلسلة طويلة من البيانات إذا-آخر.

بناء جملة حالة التبديل كما يلي:

التبديل (التعبير) {

قيمة الحالة1:

// الكود الذي سيتم تنفيذه إذا كان المتغير أو التعبير يساوي القيمة 1

استراحة;

قيمة الحالة2:

// الكود الذي سيتم تنفيذه إذا كان المتغير أو التعبير يساوي القيمة 2

استراحة;

...

الافتراضي:

// الكود الذي سيتم تنفيذه إذا كان المتغير أو التعبير لا يساوي أيا من قيم الحالة

}

القواعد الأساسية لاستخدام حالة التبديل:

  • يمكن أن يكون التعبير الموجود بين قوسين بعد الكلمة الأساسية للتبديل أي تعبير يقوم بإرجاع قيمة. عادة ما يكون هذا متغيرا ، ولكن يمكن أن يكون أيضا نتيجة دالة أو تعبير.
  • تمثل كل حالة قيمة يمكن أن يأخذها التعبير. يجب أن تكون القيمة ثابتة أو حرفية.
  • إذا كانت قيمة التعبير مساوية لقيمة الحالة ، فسيتم تنفيذ الكود الموجود داخل هذه الحالة. سيستمر تنفيذ التعليمات البرمجية حتى يتم مواجهة بيان الفاصل.
  • يتم استخدام بيان الفاصل لمقاطعة تنفيذ حالة التبديل. إذا لم يتم تحديد عبارة الفاصل ، فسيستمر تنفيذ التعليمات البرمجية في الحالة التالية.
  • إذا كانت قيمة التعبير لا تتطابق مع أي قيمة حالة ، فسيتم تنفيذ الرمز الموجود في الكتلة الافتراضية. Блок default является необязательным и может быть опущен.

Пример использования switch case:

let day = 2;

let dayName;

switch (day) {

case 1:

dayName = "Понедельник";

break;

case 2:

dayName = "Вторник";

break;

case 3:

dayName = "Среда";

break;

case 4:

dayName = "Четверг";

break;

case 5:

dayName = "Пятница";

break;

case 6:

dayName = "Суббота";

break;

case 7:

dayName = "Воскресенье";

break;

default:

dayName = "Некорректный день";

}

console.log(dayName);

// الخلاصة:"الثلاثاء"

في المثال المعطى ، يحتوي متغير اليوم على القيمة 2 ، لذلك سيتم تنفيذ الرمز داخل الحالة 2. سيأخذ متغير اسم اليوم القيمة "الثلاثاء".

أمثلة على تعبيرات حالة التبديل البسيطة

فيما يلي بعض الأمثلة على التعبيرات البسيطة التي يمكن استخدامها في بناء حالة التبديل:

    في هذا المثال ، تحتوي سلسلة اليوم على القيمة "الاثنين" ، لذلك سيتم تنفيذ كتلة التعليمات البرمجية المرتبطة بحالة" الاثنين".

    استراحة;

    }

    التعبيرات المنطقية:

    دع الاثنين = صحيح;

    دععطلة نهاية الأسبوع = خطأ;

    التبديل (صحيح) {

    القضية هيالاثنين:

    وحدة التحكم.سجل ('إنه يوم الاثنين');

    1. استراحة;
    2. القضية هيعطلة نهاية الأسبوع:

    • وحدة التحكم.سجل ('إنها عطلة نهاية الأسبوع');
    • الافتراضي:

    وحدة التحكم.سجل ('إنه يوم عادي');

    • استراحة;

    }

    Перечисления:

    كونست اللون = {

    الأحمر:'الأحمر',

    الأزرق:'الأزرق',

    الأخضر:'الأخضر'

    };

    • دع اللون = اللون.أحمر;

    التبديل (اللون) {

    1. لون القضية.أحمر:

    وحدة التحكم.سجل ('اللون أحمر');

      } آخر إذا (س = = 3) {

      // رمز للحالة عندما س هو 3

      1. باستخدام وظائف مصفوفة ومعالج
      2. break;

      case 7:

      console.log("Воскресенье");

      break;

      default: