C# :: Aufgabe #275 :: Lösung #2

8 Lösungen Lösungen öffentlich
#275

Glücksspiel Zufällige Zahl 0-9

Fortgeschrittener - C# von re_mas - 27.11.2019 um 18:30 Uhr
Die Aufgabenstellung ist wie folgt:
- Glücksspiel bei der eine random Zahl zwischen 0 - 9 erzeugt werden soll.
- Der Spieler hat ein Startkonto von 10.000 Punkten und kann damit einen beliebigen Teilbetrag auf die zufällig erzeugte Zahl setzen.
- Liegt er richtig bekommt er das 9 Fache seines Einsatzes als Gewinn
- Programmieren Sie ein entsprechendes Programm, welches die Eingaben von der Tastatur einliest und
die Ausgaben auf dem Bildschirm liefert. Die zu erratende Zahl kann durch einen verfügbaren Zufallsgenerator gezogen werden.
#2
vote_ok
von Heftog (300 Punkte) - 19.12.2019 um 23:46 Uhr
Quellcode ausblenden C#-Code
private static void Aufgabe_275()
        {
            int coins = 10000;
            int gameSize = 9;
            string wrongInput = $"\nUngültiger Wert, versuch es nochmal.\n";
            string randomValueChar = "r".ToUpperInvariant();
            string userInput;
            int gameResult;

            Console.WriteLine($"\n\n\n    Willkommen zum 275er. Ja heißt halt so.");
            while (coins > 0)
            {
                int inputTipResult = -1;
                int inputCoinResult;
                WriteLineInColor_275A("\n\n###############################################################\n\nNeue Runde, neues Glück ;)\n\n",ConsoleColor.DarkMagenta);
                while (true)
                {
                    Console.WriteLine($"\nEine Zahl zwischen 0 und {gameSize} oder 'r' für einen zufälliger Tipp\nGib deinen Tipp ein: ");
                    userInput = Console.ReadLine();
                    if (userInput.ToUpperInvariant() == randomValueChar) { break; }
                    if (int.TryParse(userInput, out inputTipResult) && inputTipResult >= 0 && inputTipResult <= gameSize) { break; }
                   
                    Console.Clear();
                    WriteLineInColor_275A(wrongInput, ConsoleColor.Red);
                }

                if (userInput.ToUpperInvariant() == randomValueChar)
                {
                    inputTipResult = new Random().Next(0, 9);
                }

                while (true)
                {
                    WriteLineInColor_275A($"Tipp: {inputTipResult}",ConsoleColor.Green);
                    Console.WriteLine($"\nDu hast {coins.ToString("#,###")} Coins.\nSetze deinen Einsatz (0-{coins.ToString("#,###")}):");
                    userInput = Console.ReadLine();
                    
                    if (int.TryParse(userInput, out inputCoinResult) && inputCoinResult >= 0 && inputCoinResult <= coins) { break; }
                    
                    Console.Clear();
                    WriteLineInColor_275A(wrongInput,ConsoleColor.Red);
                }

                coins -= inputCoinResult;
                WriteLineInColor_275A($"\nEinsatz: {inputCoinResult.ToString("#,###")}",ConsoleColor.Green);

                gameResult = new Random().Next(0, gameSize);
                WriteLineInColor_275A($"\nEs wurde {gameResult} gewürfelt.\n",ConsoleColor.Blue);

                if (gameResult == inputTipResult)
                {
                    WriteLineInColor_275A($"Du hast gewonnen. Es werden dir {(inputCoinResult * 9).ToString("#,###")} coins gutgeschrieben.\nDein neues Guthaben: {(coins += inputCoinResult * 9).ToString("#,###")}",ConsoleColor.Green);
                }
                else
                {
                    WriteLineInColor_275A("Leider daneben.",ConsoleColor.Red);
                }
                WriteLineInColor_275A("AnyKey, den mal finden",ConsoleColor.DarkGray);
                Console.ReadKey();
                Console.Clear();
            }
            Console.WriteLine("Game Over. Genug gespielt, gute Nacht.");
        }

Quellcode ausblenden C#-Code
private static void WriteLineInColor_275A(string consoleOutput, ConsoleColor color)
        {
            Console.ForegroundColor = color;
            Console.WriteLine(consoleOutput);
            Console.ForegroundColor = ConsoleColor.White;
        }

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben
2497072

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.