Gibt es eine JavaScript-Bibliothek oder -Funktion, die Gleichungen für Variablen löst?JavaScript-Gleichungslöser-Bibliothek
Wie 9 = 3 + x
und lösen für x. Es sollte aber auch komplexere Gleichungen wie Sinus, Kosinus und Tangens lösen.
Gibt es eine JavaScript-Bibliothek oder -Funktion, die Gleichungen für Variablen löst?JavaScript-Gleichungslöser-Bibliothek
Wie 9 = 3 + x
und lösen für x. Es sollte aber auch komplexere Gleichungen wie Sinus, Kosinus und Tangens lösen.
Sie können ungefähre die Lösung, indem Sie tun, was Excel nennt "Ziel suchen" - Testwerte für x
, bis beide Seiten der Gleichung annähernd übereinstimmen. Sie können dies tun, indem Sie die Gleichung durch das Zeichen "="
aufteilen, indem Sie jedes Vorkommen von x
durch einen Wert von eval
auf beiden Seiten ersetzen und bestimmen, ob die Differenz unter einen bestimmten Schwellenwert fällt. Obwohl relativ einfach, gibt es bei dieser Methode zwar Fehler (abgesehen von der Tatsache, dass es eine Annäherung ist), zum Beispiel könnte der Algorithmus annehmen, dass die beiden Seiten konvergieren, obwohl es tatsächlich nur ein lokales Minimum ist Differenz fällt knapp unter Ihre Schwelle. Sie müssen auch mehrere Startpunkte testen, um Gleichungen mit mehr als einer Lösung zu lösen.
für ein Programm tatsächlich lösen eine Gleichung als Mensch würde (von den beiden Seiten der Gleichung Umordnen und Anwenden Umkehrfunktionen, Derivate/Integrale und so weiter) ist viel komplexer, und fühlt sich irgendwie ganz proprietäre;)
Sehen Sie sich das Skript unter Newton's Method Program for f(x)=0 an. Es löst die Gleichung unter Verwendung Newton's tangent method.
Eine schnelle Suche erscheint algebra.js und js-solver. Ich weiß nichts über sie, aber sie scheinen echt zu sein. algebra.js hat eine nette OOP-API, scheint aber trigonometrische Funktionen nicht zu handhaben.
Ich möchte einen Computer für mich auch denken! "Computer, schreibe ein Programm, das dies tut ..." –
Wenn Sie ein "Constraint-Netzwerk" machen, wird es möglich sein. – Codler
Ganz einfach, aber vielleicht können Sie eine JS-Bibliothek erstellen, um mit der Wolfram Alpha API zu interagieren. –