Cvičení – dokončení výzvy k vytvoření opakovaně použitelné metody
Výzvy kódu posiluje to, co jste se naučili, a pomáhají vám získat jistotu, než budete pokračovat dál.
Cílem této výzvy je upravit kód tak, aby byl opakovaně použitelný a bylo možné ho kdykoli spustit.
Řekněte štěstí
Pomáháte rozvíjet masivní hru pro více hráčů. Každý hráč má štěstí statistiky, které mohou ovlivnit jejich šance najít vzácné poklady. Každý den může hráč mluvit s in-game fortune teller, který odhalí, zda je jejich štěstí statistika vysoká, nízká nebo neutrální.
Hra má momentálně kód pro generování štěstí hráče, ale není opakovaně použitelný. Vaším úkolem je vytvořit metodu tellFortune , která se dá kdykoli volat, a nahradit existující logiku voláním metody.
V této výzvě jste dostali počáteční kód. Musíte se rozhodnout, jak vytvořit a volat metodu tellFortune .
Výzva kódu: Vytvoření opakovaně použitelné metody
V kódu, na kterém začínáte, je obecné textové pole následované dobrými, špatnými a neutrálními textovými poli. V závislosti na hodnotě luckje jedna z polí vybrána a zobrazena společně s obecným textem.
Vaším úkolem je vytvořit opakovaně použitelnou metodu, která kdykoli vytiskne štěstí hráče. Metoda by měla obsahovat logiku, která již existuje v zadaném kódu.
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.
Zkopírujte a vložte do Editoru následující kód:
Random random = new Random(); int luck = random.Next(100); string[] text = {"You have much to", "Today is a day to", "Whatever work you do", "This is an ideal time to"}; string[] good = {"look forward to.", "try new things!", "is likely to succeed.", "accomplish your dreams!"}; string[] bad = {"fear.", "avoid major decisions.", "may have unexpected outcomes.", "re-evaluate your life."}; string[] neutral = {"appreciate.", "enjoy time with friends.", "should align with your values.", "get in tune with nature."}; Console.WriteLine("A fortune teller whispers the following words:"); string[] fortune = (luck > 75 ? good : (luck < 25 ? bad : neutral)); for (int i = 0; i < 4; i++) { Console.Write($"{text[i]} {fortune[i]} "); }Aktualizujte kód tak, aby používal metodu k zobrazení štěstí.
K dokončení aktualizace použijte to, co jste se naučili o vytváření a volání metod.
Otestujte kód tak, že znovu změníte hodnotu
luckmetody a zavoláte ji.Ověřte, že váš kód vytvoří jednu z následujících zpráv:
A fortune teller whispers the following words: You have much to look forward to. Today is a day to try new things! Whatever work you do is likely to succeed. This is an ideal time to accomplish your dreams!A fortune teller whispers the following words: You have much to appreciate. Today is a day to enjoy time with friends. Whatever work you do should align with your values. This is an ideal time to get in tune with nature.A fortune teller whispers the following words: You have much to fear. Today is a day to avoid major decisions. Whatever work you do may have unexpected outcomes. This is an ideal time to re-evaluate your life.
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.