Hallo, (...)
Mathias
Hallo Mathias :)
Danke erstmal, dass du geschrieben hast.
Ich habe deinen Ratschlag befolgt und es bereits soweit geschafft, dass ich eine Eingabe wie "x^3,2 + -5,2x^2 - 4:2" in "Math.pow(x, 3.2)-5.2*Math.pow(x, 2)-4/2" umzwandeln und dann mit eval() ausrechnen zu lassen.
Für das Newton Verfahren muss ich aber noch einen Schritt weiter gehen und von obiger Formel die Ableitung bilden.
Sprich, aus:
3*x^5 + 3*x^4 - 5*x + 3
soll werden
5*3*x^(5-1) + 4*3*x^(4-1) - 5
oder einfacher:
15*x^4 + 12*x^3 - 5
Dazu überlegt habe ich mir, einfach alle a*x^b per Regex herauszusuchen und mit backreferences durch b*a*x^(b-1) zu ersetzen. Das Problem ist nun, dass ich mit $i nicht arbeiten kann.
Beispielzeichenkette: "5x2"
Regex: replace(/ ([0-9]) x ([0-9]) /g, "$1 x $2") <- funktioniert, Leerzeichen nur zur besseren Übersicht
Regex: replace(/ ([0-9]) x ([0-9]) /g, "" + ($1 * $2) + "x $2") <- funktioniert nicht, $1 ist natürlich keine Variable.
Wie kann ich also mit $1, $2 usw. rechnen?