Entwickler-Ecke

Basistechnologien - Mathematische Funktion auslesen und in Variable speichern


Sharpener - Mo 23.04.12 19:23
Titel: Mathematische Funktion auslesen und in Variable speichern
Hallihallo ich mal wieder,
naja immernoch das gleiche Projekt, nämlich mathematische Lösungstools. Für Funktionen höheren Grades wollte ich einen Nullstellen-Errater programmieren. Dabei soll eine Funktion ausgelesen werden und dann durch einsetzen von Werten eine oder mehrere Nullstellen ausgerechnet werden.
Bisjetzt:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
 //ENDE NewAbleitung START NullstellenRaten
        public void NullstellenRaten()
        {
        String s = "x";
        int x;
        double i;
        for (x = 0; x < s.Length; x++) {
        char c = s[x];
        // c in einer Integer Variable Speichern ?
        }
        Console.WriteLine("MethodenENDE");

        }

Leider krieg ich das nicht so wirklich hin. Als Test habe ich einfach nur die Funktion x (string s). Zunächst wird ein Zeichen aus den String ausgelesen und in c gespeichert. Der Character in C soll dann aber in einer (Funktions)variable gespeichert werden um dann per Einsetzen eine Nullstelle auszurechen.
Beispiel:
Eingabe : x^2
-> Dann soll Variable i = Math.Pow(x,2) sein
Ich hab schon Google und Forumssuche betätigt, habe aber vergeblichst nichts gefunden.
Gibt es da vielleicht eine Möglichkeit?


Th69 - Di 24.04.12 09:58

Hallo Sharpener,

da kann ich dir meinen Parser für mathematische Formeln [http://www.mycsharp.de/wbb2/thread.php?threadid=71995] empfehlen. Für dich ist dann der FormulaParser interessant (s.a. Beispiel auf der verlinkten Seite - letzter Code-Block vor den Edits).
Die gebräuchlichsten mathematischen Operatoren und Funktionen sind schon implementiert (du kannst diese aber selbstverständlich auch selber erweitern).