Hi,
ich bin momentan an einem Rechner dran in den man eine Aufgabe eingeben kann und er berechnet sie dann mit 2 Zahlen und dazwischen ein Zeichn ging wunderbar, für Interessenten hier der Code:
static void Rechnen()
{
Console.Clear();
Console.WriteLine("Geben Sie einen Term aus 2 Zahlen und einem Rechenzeichen\nFür Potenzen bitte ^ zwischen die beiden Zahlen setzen\nFür Wurzeln bitte # zwischen die beiden Zahlen setzen");
string komplett = Console.ReadLine();
double zahl1 = double.Parse(komplett.Split(new char[6] { '/', '\*', '-', '+', '^', '#' })[0]);
double zahl2 = double.Parse(komplett.Split(new char[6] { '/', '\*', '-', '+', '^', '#' })[1].TrimStart(new char[6] { '/', '\*', '-', '+', '^', '#' }));
char zeichen = komplett.Substring(zahl1.ToString().Length, 1).ToCharArray()[0];
switch (zeichen)
{
case '/': Console.WriteLine(zahl1 + "/" + zahl2 + "=" + (zahl1 / zahl2).ToString());
break;
case '\*': Console.WriteLine(zahl1 + "\*" + zahl2 + "=" + (zahl1 \* zahl2).ToString());
break;
case '-': Console.WriteLine(zahl1 + "-" + zahl2 + "=" + (zahl1 - zahl2).ToString());
break;
case '+': Console.WriteLine(zahl1 + "+" + zahl2 + "=" + (zahl1 + zahl2).ToString());
break;
case '^': Console.WriteLine(zahl1 + "^" + zahl2 + "=" + Math.Pow(zahl1, zahl2).ToString());
break;
case '#': Console.WriteLine(zahl1 + "#" + zahl2 + "=" + Math.Pow(zahl1, 1 / zahl2).ToString());
break;
default: Console.WriteLine("Fehler");
break;
}
Ende();
}
Wenn ich nun aber mehrere Zahlen und Zeichen eingeben will läuft das ganze nicht mehr hier mein bisheriger Code:
static void Rechnen1()
{
DoubleCollection dc = new DoubleCollection();
Console.Clear();
Console.WriteLine("Geben Sie einen Term aus 2 Zahlen und einem Rechenzeichen\nFür Potenzen bitte ^ zwischen die beiden Zahlen setzen\nFür Wurzeln bitte # zwischen die beiden Zahlen setzen");
string komplett = Console.ReadLine();
int menge = komplett.Split(new char[6] { '/', '\*', '-', '+', '^', '#' }).Length;
for (int i = 0; i
Die Klasse DoubleCollection ist aus System.Windows.Media; aus der Assembly PresentationCore.
Die void Ende ist eine klassische Ende-void Geben Sie ende zum beenden ein usw.
Kennt jemand eine Lösung?
Und ja ich weiss in WindowsForms bzw. WPF wäre das sehr viel einfacher, da ich dort mit automatisch nachfolgenden TextBoxes arbeiten kann.
Lg der einzigware