Упражнение - Выполните задание с испытанием, используя операторы switch

Завершённый

Задания по программированию укрепят то, что вы узнали, и помогут вам обрести больше уверенности, прежде чем продолжать.

Преобразование в вызов инструкций switch

В этом задании вы перепишете конструкцию if-elseif-else в виде оператора switch. Эта задача должна помочь вам увидеть сильные и слабые стороны оператора switch по сравнению с конструкцией if-elseif-else. Удачи.

Проблема кода: перезапись if-elseif-else с помощью инструкции switch

Начните с кода, использующего конструкцию if-elseif-else для оценки компонентов SKU продукта. Номер SKU (единица хранения запасов) форматируется с помощью трех закодированных значений: <product #>-<2-letter color code>-<size code> Например, значение 01-MN-L SKU соответствует (толстовка)-(бордовый)-(большой размер), и код выводит описание, которое отображается как "Продукт: Большая бордовая толстовка".

Задача заключается в преобразовании кода инструкции if в switch инструкцию, которая достигает того же результата, что и исходный код.

  1. Убедитесь, что в Visual Studio Code открыт пустой файл Program.cs.

    При необходимости откройте Visual Studio Code и выполните следующие действия, чтобы подготовить файл Program.cs в редакторе:

    1. В меню Файл выберите Открыть папку.

    2. Используйте диалоговое окно "Открыть папку", чтобы перейти к ней, а затем открыть папку CsharpProjects .

    3. На панели обозревателя Visual Studio Code выберите Program.cs.

    4. В меню Selection в Visual Studio Code выберите Выбрать все, затем нажмите клавишу Delete.

  2. Введите следующий код в редактор Visual Studio Code:

    // SKU = Stock Keeping Unit. 
    // SKU value format: <product #>-<2-letter color code>-<size code>
    string sku = "01-MN-L";
    
    string[] product = sku.Split('-');
    
    string type = "";
    string color = "";
    string size = "";
    
    if (product[0] == "01")
    {
        type = "Sweat shirt";
    } else if (product[0] == "02")
    {
        type = "T-Shirt";
    } else if (product[0] == "03")
    {
        type = "Sweat pants";
    }
    else
    {
        type = "Other";
    }
    
    if (product[1] == "BL")
    {
        color = "Black";
    } else if (product[1] == "MN")
    {
        color = "Maroon";
    } else
    {
        color = "White";
    }
    
    if (product[2] == "S")
    {
        size = "Small";
    } else if (product[2] == "M")
    {
        size = "Medium";
    } else if (product[2] == "L")
    {
        size = "Large";
    } else
    {
        size = "One Size Fits All";
    }
    
    Console.WriteLine($"Product: {size} {color} {type}");
    
  3. Обновите код, чтобы использовать switch инструкцию вместо if-elseif-else конструкции.

  4. Убедитесь, что выходные данные не изменились.

    Независимо от того, как это сделать, код должен производить следующие выходные данные:

    Product: Large Maroon Sweat shirt
    

Продолжайте изучать решение этой задачи, независимо от того, столкнулись ли вы с трудностями и нуждаетесь в подсказке или успешно завершили её.