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
1810733

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.