Cvičení – splnění výzvy pomocí switch příkazů
Programovací výzvy posílí to, co jste se naučili, a také vám pomohou získat jistotu, než budete pokračovat.
Výzva: Převod na příkazy switch
V tomto úkolu přepíšete if-elseif-else konstrukci do switch příkazu. Tato výzva by vám měla pomoct vidět silné/slabé stránky switch příkazu v porovnání s konstrukcí if-elseif-else. Hodně zdaru.
Výzva kódu: přepsání příkazu if-elseif-else pomocí příkazu switch
Začnete kódem, který používá if-elseif-else konstruktor k vyhodnocení součástí skladové položky produktu. Skladová položka (Skladová jednotka) je naformátovaná pomocí tří kódovaných hodnot: <product #>-<2-letter color code>-<size code>. Například hodnota skladové položky 01-MN-L odpovídá (mikina)-(vínová)-(velká) a kód vypíše popis, který se zobrazí jako "Produkt: Velká vínová mikina".
Vaším úkolem je převést if kód příkazu na switch příkaz, který dosáhne stejného výsledku jako počáteční kód.
Ujistěte se, že máte v editoru Visual Studio Code otevřený prázdný soubor Program.cs.
V případě potřeby otevřete Visual Studio Code a pak následujícím postupem připravte soubor Program.cs v Editoru:
V nabídce Soubor vyberte Otevřít složku.
Pomocí dialogového okna Otevřít složku přejděte na složku CsharpProjects a otevřete ji.
Na panelu Průzkumník editoru Visual Studio Code vyberte Program.cs.
V nabídce Výběru editoru Visual Studio Code vyberte Vybrat vše a stiskněte klávesu Delete.
Do editoru visual studio Code zadejte následující kód:
// 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}");Aktualizujte kód tak, aby místo konstruktoru
switchpoužívalif-elseif-elsepříkaz.Ověřte, že se váš výstup nezměnil.
Bez ohledu na to, jak to uděláte, by měl váš kód vytvořit následující výstup:
Product: Large Maroon Sweat shirt
Ať už si nevíte rady a potřebujete nahlédnout do řešení, nebo jste úkol úspěšně dokončili, pokračujte a podívejte se na řešení tohoto úkolu.