Hallo Com,
ich habe mich heute an einer Schnittpunktberechnung zweier Funktionen versucht.
Ich hab dafür folgenden Lösungsansatz geschrieben:
Spoiler anzeigen
#include <Array.au3>
$sF1 = "x^2"
$sF2 = "3*x"
$sF1 = StringReplace($sF1, "x", "($x)")
$sF2 = StringReplace($sF2, "x", "($x)")
$iStart = -1000
$iEnd = 1000
Global $aSchnittpunkt[1]
$aSchnittpunkt[0] = 0
For $x = $iStart To $iEnd
If Execute($sF1) = Execute($sF2) Then
ReDim $aSchnittpunkt[Ubound($aSchnittpunkt) + 1]
$aSchnittpunkt[UBound($aSchnittpunkt) - 1] = Execute($sF1)
$aSchnittpunkt[0] = UBound($aSchnittpunkt) - 1
EndIf
Next
_ArrayDisplay($aSchnittpunkt)
[/autoit]Nur leider funktioniert diese Schnittpuntberechnung nur, wenn der y-Achsenabschnitt null ist;
also "3*x + 0" als Funktionsgleichung funktioniert, "3*x + 1" jedoch nicht.
Und ich frage mich jetzt natürlich, warum nicht - ich sehe momentan einfach keinen Fehler, vielleicht sehe ich auch einfach den Wald vor lauter Bäumen nicht.
Wär nett, wenn ihr mal drüber schauen könntet, vielleicht entdeckt ihr den Fehler, den ich gemacht habe.
Viele Grüße und Dank im Vorraus,
stayawayknight