Ich beginne gerade in C# und ich machte diesen ziemlich einfachen Rechner. Zuallererst, was denkst du über meinen Code, gibt es etwas, das ich verbessern sollte? Zweitens, wenn ich den Benutzer frage, 2 Zahlen einzugeben, wie mache ich es so, dass er nur Zahlen eingeben kann? Wenn der Benutzer ein anderes Zeichen eingibt, bleibt die Schleife hängen und das Programm stürzt ab.Wie man nur Zahlen in Benutzereingabe erlaubt
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
namespace App1
{
class Program
{
static void Main(string[] args)
{
bool retry = true;
while (retry)
{
retry = true;
double x1;
double x2;
double x3;
string calc;
Console.WriteLine("**** Hello, Welcome to Calculator ****");
Console.WriteLine("Type a number please: ");
x1 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n Now type another number: ");
x2 = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("\n Now please select a calculation:(/,*,+/-)");
calc = Convert.ToString(Console.ReadLine());
if (calc == "*")
{
x3 = (x1 * x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "/")
{
x3 = (x1/x2); Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "+")
{
x3 = (x1 + x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else if (calc == "-")
{
x3 = (x1 - x2);
Console.WriteLine("\n Your Numbers equal = " + x3);
retry = false;
}
else
{
Console.WriteLine("\n Error, please type one of the 4 calculations: ");
retry = true;
}
//Don't Exit:
Console.ReadKey();
//Don't Exit:
}
}
}
}
Vielen Dank, aber nicht mein Code sagt x1 und x2 haben keine Werte. – user1930233
Sorry, verpasste das. Überprüfen Sie die Bearbeitung. – stybl
wunderbar, funktioniert perfekt. Will auch in Switch-Anweisungen schauen, wie du gesagt hast, – user1930233