C# :: Aufgabe #281 :: Lösung #3

4 Lösungen Lösungen öffentlich
#281

Rabatt für Stammkunden

Anfänger - C# von DragStar - 20.03.2020 um 11:46 Uhr
Ein Kassenprogramm verlangt die Eingabe eines Betrags und fragt, ob der Kunde Stammkunde ist. Falls ja, erhält er 5% Rabatt.
Das Programm soll auf die Eingaben "j" und "n", groß und klein geschrieben, reagieren.
#3
vote_ok
von charlyP (250 Punkte) - 25.03.2020 um 00:26 Uhr
Quellcode ausblenden C#-Code
using System;

namespace Rabatt
{
    class Program
    {
        static void Main(string[] args)
        {
            Eingabe1:
            double betrag, rabatt = 0;
            int prozent = 5;
            string eingabe, antwort = null;
            bool stammkunde = false;
            
            Console.WriteLine("Bitte Rechnungsbetrag eingeben:");
            eingabe = Console.ReadLine();
            try
            {
                betrag = double.Parse(eingabe);
            }
            catch (FormatException)
            {
                Console.WriteLine("Ungültige Eingabe. Bitte wiederholen.");
                goto Eingabe1;
            }

            if (betrag >= 0)
            {
                Eingabe2: 
                Console.WriteLine("Stammkunde? J/N");
                antwort = Console.ReadLine();

                if (antwort == "j" || antwort == "J")
                {
                    stammkunde = true;
                }
                else if (antwort == "n" || antwort == "N")
                {
                    stammkunde = false;
                }
                else
                {
                    Console.WriteLine("Ungültige Eingabe. Bitte wiederholen.");
                    goto Eingabe2;
                }

                if (stammkunde)
                {
                    rabatt = betrag * prozent / 100;
                }
                else
                {
                    rabatt = 0;
                    Console.WriteLine("Leider kein Rabatt möglich.");
                }

            }
            else
            {
                Console.WriteLine("Ungültige Eingabe. Bitte wiederholen.");
                goto Eingabe1;
            }
          
            Ausgabe:
            Console.WriteLine("Betrag: " + Math.Round(betrag, 2) + " Euro, Stammkunde: " + antwort + " , Rabatt: " + Math.Round(rabatt, 2) + " Euro");
            Console.ReadLine();
            goto Eingabe1;

        }
    }
}

Kommentare:

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

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