Wird geladen...

C# Verzweigungsstrukturen (if, else, switch)

Entscheidungsstrukturen in C#: lernen Sie, wie man mit if, else if, else und switch unterschiedliche Aktionen abhängig von Bedingungen ausführt.

In der Programmierung müssen oft unterschiedliche Aktionen abhängig von Bedingungen ausgeführt werden. In C# werden solche Fälle mit Entscheidungsstrukturen behandelt. Die gängigsten sind if, else if, else und switch.


if-Anweisung

Die if-Anweisung wird ausgeführt, wenn die Bedingung true ist.


int zahl = 10;

if (zahl > 5)
{
    Console.WriteLine("Die Zahl ist größer als 5.");
}

if - else

Mit else wird ein alternativer Block ausgeführt, wenn die Bedingung false ist.


Console.Write("Geben Sie Ihre Note ein: ");
int note = int.Parse(Console.ReadLine()); // Umwandlung von string zu int

if (note >= 50)
{
    Console.WriteLine("Bestanden.");
}
else
{
    Console.WriteLine("Nicht bestanden.");
}

if - else if - else

Mit else if lassen sich mehrere Bedingungen nacheinander prüfen.


int note = 75;

if (note >= 90)
{
    Console.WriteLine("Note: A");
}
else if (note >= 70)
{
    Console.WriteLine("Note: B");
}
else if (note >= 50)
{
    Console.WriteLine("Note: C");
}
else
{
    Console.WriteLine("Nicht bestanden");
}

switch-Anweisung

Mit switch wird anhand fester Werte verzweigt. Lesbarer als viele else if-Blöcke.


Console.Write("Geben Sie die Tagesnummer ein (1-7): ");
int tag = int.Parse(Console.ReadLine());

switch (tag)
{
    case 1: Console.WriteLine("Montag"); break;
    case 2: Console.WriteLine("Dienstag"); break;
    case 3: Console.WriteLine("Mittwoch"); break;
    case 4: Console.WriteLine("Donnerstag"); break;
    case 5: Console.WriteLine("Freitag"); break;
    case 6: Console.WriteLine("Samstag"); break;
    case 7: Console.WriteLine("Sonntag"); break;
    default: Console.WriteLine("Ungültiger Tag!"); break;
}

Benutzereingaben mit Entscheidungsstrukturen

Entscheidungsstrukturen werden oft mit Benutzereingaben verwendet.


Console.Write("Geben Sie eine Zahl ein: ");
int zahl = int.Parse(Console.ReadLine());

if (zahl % 2 == 0)
{
    Console.WriteLine("Die Zahl ist gerade.");
}
else
{
    Console.WriteLine("Die Zahl ist ungerade.");
}

Zusammenfassung


Menübeispiel: Verwendung von if, else if, else und switch

In diesem Beispiel wird ein einfaches Konsolenmenü erstellt. Die Benutzereingabe wird mit der if / else if / else-Struktur geprüft, und die switch-Anweisung führt die gewählte mathematische Operation aus. Dadurch wird gezeigt, wie Bedingungs- und Auswahlstrukturen kombiniert werden können.


using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("=== Menü ===");
        Console.WriteLine("1 - Addition");
        Console.WriteLine("2 - Subtraktion");
        Console.WriteLine("3 - Multiplikation");
        Console.WriteLine("4 - Division");
        Console.WriteLine("0 - Beenden");
        Console.Write("Ihre Auswahl: ");

        int auswahl = int.Parse(Console.ReadLine()); // Umwandlung von string zu int

        if (auswahl == 0)
        {
            Console.WriteLine("Programm wird beendet...");
        }
        else if (auswahl >= 1 && auswahl <= 4)
        {
            Console.Write("Erste Zahl eingeben: ");
            double zahl1 = double.Parse(Console.ReadLine());

            Console.Write("Zweite Zahl eingeben: ");
            double zahl2 = double.Parse(Console.ReadLine());

            switch (auswahl)
            {
                case 1:
                    Console.WriteLine($"Ergebnis: {zahl1 + zahl2}");
                    break;
                case 2:
                    Console.WriteLine($"Ergebnis: {zahl1 - zahl2}");
                    break;
                case 3:
                    Console.WriteLine($"Ergebnis: {zahl1 * zahl2}");
                    break;
                case 4:
                    if (zahl2 != 0)
                        Console.WriteLine($"Ergebnis: {zahl1 / zahl2}");
                    else
                        Console.WriteLine("Fehler: Division durch Null ist nicht erlaubt!");
                    break;
            }
        }
        else
        {
            Console.WriteLine("Ungültige Auswahl.");
        }
    }
}