Exercice - Effectuer une activité de défi impliquant l’utilisation d’instructions switch

Terminé

Les défis du code renforcent ce que vous avez appris et vous aident à gagner en confiance avant de continuer.

Défi de conversion en instructions switch

Dans ce défi, vous allez réécrire une if-elseif-else expression sous forme de switch phrase. Ce défi devrait vous aider à percevoir les forces et faiblesses de l'instruction switch par rapport à une construction if-elseif-else. Bonne chance.

Défi de code : réécrire if-elseif-else à l’aide d’une instruction switch

Vous allez commencer par du code qui utilise une if-elseif-else construction pour évaluer les composants d’une référence SKU de produit. La référence SKU (Unité de conservation des stocks) est mise en forme à l’aide de trois valeurs codées : <product #>-<2-letter color code>-<size code>. Par exemple, une valeur de référence (SKU) 01-MN-L correspond à (sweat shirt)-(maroon)-(large) et le code génère une description qui s’affiche sous la forme « Product : Large Maroon Sweat shirt ».

Votre défi consiste à convertir le if code d’instruction en instruction switch qui obtient le même résultat que le code initial.

  1. Assurez-vous d’avoir un fichier Program.cs vide ouvert dans Visual Studio Code.

    Si nécessaire, ouvrez Visual Studio Code, puis effectuez les étapes suivantes pour préparer un fichier Program.cs dans l’Éditeur :

    1. Dans le menu Fichier , sélectionnez Ouvrir le dossier.

    2. Utilisez la boîte de dialogue Ouvrir le dossier pour accéder au dossier CsharpProjects et l’ouvrir.

    3. Dans le panneau Explorateur de Visual Studio Code, sélectionnez Program.cs.

    4. Dans le menu Sélection de Visual Studio Code, sélectionnez Sélectionner tout, puis appuyez sur la touche Supprimer.

  2. Entrez le code suivant dans l’Éditeur 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. Mettez à jour le code pour utiliser une switch instruction à la place de la if-elseif-else structure.

  4. Vérifiez que votre sortie n’a pas changé.

    Quelle que soit la façon dont vous le faites, votre code doit produire la sortie suivante :

    Product: Large Maroon Sweat shirt
    

Que vous soyez bloqué et que vous ayez besoin d’examiner la solution ou que vous avez terminé avec succès, continuez à afficher une solution à ce défi.