Gyakorlat – Teljesítsen egy kihívást feltételválasztó utasítások használatával

Befejeződött

A kódokkal kapcsolatos kihívások megerősítik a tanultakat, és segítenek némi magabiztosságot szerezni a folytatás előtt.

Switch utasításokra konvertálás kihívás

Ebben a kihívásban egy if-elseif-else konstrukciót fog átírni egy switch utasítássá. Ez a kihívás segíthet abban, hogy meglásd az switch állítás erősségeit és gyengeségeit egy if-elseif-else szerkezettel összehasonlítva. Sok szerencsét.

Kódkérdés: az if-elseif-else átírása kapcsolóutasítás használatával

Először olyan kóddal kell kezdenie, amely egy if-elseif-else termékváltozat összetevőinek kiértékeléséhez egy szerkezetet használ. A termékváltozat (Stock Keeping Unit) három kódolt érték használatával van formázva: <product #>-<2-letter color code>-<size code>. Például egy termékváltozat értéke 01-MN-L megfelel a (kapucnis pulóver)-(gesztenyebarna)-(nagy) értéknek, és a kód a "Termék: Nagy gesztenyebarna kapucnis pulóver" feliratú leírást adja ki.

A feladat az, hogy az if utasításkódot olyan switch utasítássá konvertálja, amely ugyanazt az eredményt éri el, mint a kezdeti kód.

  1. Győződjön meg arról, hogy egy üres Program.cs fájl van megnyitva a Visual Studio Code-ban.

    Ha szükséges, nyissa meg a Visual Studio Code-ot, majd végezze el a következő lépéseket egy Program.cs fájl szerkesztéséhez a Szerkesztőben:

    1. A Fájl menüben válassza a Mappa megnyitása lehetőséget.

    2. A Mappa megnyitása párbeszédpanelen lépjen a CsharpProjects mappára, majd nyissa meg azt.

    3. A Visual Studio Code EXPLORER ablakban válassza a Program.cs-t.

    4. A Visual Studio Code Selection menüjében válassza az Összes kijelölése lehetőséget, majd nyomja le a Delete billentyűt.

  2. Írja be a következő kódot a Visual Studio Code Editorba:

    // 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. A kódot úgy frissítse, hogy a switch szerkezet helyett egy if-elseif-else utasítást használjon.

  4. Ellenőrizze, hogy a kimenet nem változott-e.

    Függetlenül attól, hogy hogyan csinálja, a kódnak a következő kimenetet kell előállítania:

    Product: Large Maroon Sweat shirt
    

Ha elakad, és belepillantana a megoldásba, vagy ha sikeresen végzett a feladattal, a folytatásban megtekintheti a megoldást.