使用 while 循环重新启动代码块

Restart the codeblock with a while-loop

问题: 我想在出现错误消息后重新启动我的代码块。

Console.Write("\tBitte geben Sie ihre erste Zahl ein: ");

if (!double.TryParse(Console.ReadLine(), out zahl1))
    Console.WriteLine("\tUngültige Eingabe. Bitte geben Sie nur Zahlen an!");

您只需将 if 更改为 while:

Console.Write("\tBitte geben Sie ihre erste Zahl ein: ");
while (!double.TryParse(Console.ReadLine(), out zahl1))
    Console.WriteLine("\tUngültige Eingabe. Bitte geben Sie nur Zahlen an!");

会很简单:

Console.Write("\tBitte geben Sie ihre erste Zahl ein: ");
while (!double.TryParse(Console.ReadLine(), out zahl1))
{
    Console.WriteLine("\tUngültige Eingabe. Bitte geben Sie nur Zahlen an!");

    Console.Write("\tBitte geben Sie ihre erste Zahl ein: ");
}

您需要确保再次提示用户,否则他们将不知道他们需要输入另一个号码。

使用 do ... while 循环:

bool error;
do
{
    Console.Write("\tBitte geben Sie ihre erste Zahl ein: ");
    error = !double.TryParse(Console.ReadLine(), out zahl1); 
    if (error)
        Console.WriteLine("\tUngültige Eingabe. Bitte geben Sie nur Zahlen an!");
} while(error);