Kurvendiskussionsprogramm < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 16:20 Sa 06.01.2007 | Autor: | Gille |
Hallo Freunde,
für meine Facharbeit in der Schule habe ich ein Kurvendiskussionsprogramm geschrieben, welches eine vollständige Kurvendiskussion einer ganzrationalen Funktion bis zum Grad 4 berechnet. Weil viele Augen mehr sehen als zwei würde ich euch gern bitten, das Programm ein wenig zu testen und mir über eventuelle Fehler (jedes Programm hat Fehler ^^) zu berichten.
Ich würde mich darüber sehr freuen.
MfG
Gille
|
|
|
|
Hallo,
dann lass doch mal schauen. Ich würde es mal ausprobieren.
In welcher Sprache ist es denn geschrieben? Quelltext auch checken?
Gruß
Martin
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 19:34 Sa 06.01.2007 | Autor: | Gille |
mir fällt auf, dass ich vergessen habe, den Link reinzustellen!
Das Programm ist auf PHP-Basis geschrieben.
Den Quellcode nicht checken, denn es ist ja eine Facharbeit und somit muss ich sowas allein machen.
also Webadresse:
www.nils-gehlich.de/ableitung/ableitung1.php
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 20:09 Sa 06.01.2007 | Autor: | Martin243 |
Hallo,
also an $f(x) = 3.47 [mm] x^3 [/mm] + 4.745 x + 500$ geht es kaputt.
Da gibt es bei den Nullstellen die Meldung:
Fatal error: Maximum execution time of 30 seconds exceeded in /www/htdocs/w005ae35/ableitung/ableitung3.php on line 540
Da du die Kurvendiskussion für Polynome max. 4. Grades machst, kannst du die Nullstellen auch analytisch bestimmen. Das ist mit gewissem Aufwand bis zum 4. Grad möglich.
Du solltest unerlaubte Eingaben abfangen, z.B.:
Wenn man als Grad 5.5 eingibt, bekommt man die Fehlermeldung:
Fatal error: Allowed memory size of 41943040 bytes exhausted (tried to allocate 35 bytes) in /www/htdocs/w005ae35/ableitung/ableitung2.php on line 17
Dasselbe gilt für Strings (geht das?) und negative Zahlen.
"Geben Sie..." statt "Geben sie..."
Zu "Wie groß muss die Skala...":
Könnte man da nicht stattdessen nach den Intervallgrenzen fragen? Linke und rechte getrennt? Also [mm] $x_{\min}$, $x_{\max}$
[/mm]
Dasselbe für y oder noch schöner: Das Programm berechnet in dem gegebenen Intervall $die Werte für [mm] y_{\min}$ [/mm] und [mm] $y_{\max}$ [/mm] selbst und wählt die y-Skala automatisch.
Bei der Auswertung könnte man vielleicht den Faktor 1 weglassen. Sieht schicker aus...
Bei allen Ableitungen steht "f(x) = " statt "f'(x)", "f''(x)" usw.
Gehört die lange Ausgabe der ganzen Funktionswerte dazu? Oder ist das eine Debug-Ausgabe? Ist etwas irritierend, Tausende Zahlen ausgegeben zu bekommen.
Im Koordinatensystem sollten die Pfeile nur nach oben und rechts zeigen, nicht nach links und unten. Kann man evtl. die Achsen beschriften?
Kann man Schriftgröße und Größe der getexten Formeln besser anpassen?
Fehler: "Verhalten im Undendlichen"
"Nach dem Newtonschen"
"Nullpunkte"
Das ist mir so aufgefallen. Es sind natürlich Vorschläge dabei. Hauptsache ist, die Fehler sind weg.
Gruß
Martin
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:13 Sa 06.01.2007 | Autor: | Gille |
Hallo,
>
> also an [mm]f(x) = 3.47 x^3 + 4.745 x + 500[/mm] geht es kaputt.
> Da gibt es bei den Nullstellen die Meldung:
> Fatal error: Maximum execution time of 30 seconds exceeded
> in /www/htdocs/w005ae35/ableitung/ableitung3.php on line
> 540
>
Ja, ich habe es mir angesehen und festgestellt, dass die Abfrage des y-Werts zu genau war (Der y-Wert musste 15-Stellen hinter dem Komma korrekt sein). Ich habe den Wert etwas verringt. Ist zwar keine saubere Lösung, jedoch ist es eine.
> Da du die Kurvendiskussion für Polynome max. 4. Grades
> machst, kannst du die Nullstellen auch analytisch
> bestimmen. Das ist mit gewissem Aufwand bis zum 4. Grad
> möglich.
>
Kannst du mir sagen, wo ich so eine Berechnung finde? Habe länger danach gesucht, bin aber nur auf das Newtonsche Verfahren gestoßen.
> Du solltest unerlaubte Eingaben abfangen, z.B.:
> Wenn man als Grad 5.5 eingibt, bekommt man die
> Fehlermeldung:
> Fatal error: Allowed memory size of 41943040 bytes
> exhausted (tried to allocate 35 bytes) in
> /www/htdocs/w005ae35/ableitung/ableitung2.php on line 17
> Dasselbe gilt für Strings (geht das?) und negative
> Zahlen.
Ich werde schauen, dass ich eine Abfrage davor setzte!
>
> "Geben Sie..." statt "Geben sie..."
Ja sieht schöner aus!
>
> Zu "Wie groß muss die Skala...":
> Könnte man da nicht stattdessen nach den Intervallgrenzen
> fragen? Linke und rechte getrennt? Also [mm]x_{\min}[/mm], [mm]x_{\max}[/mm]
Ist sicherlich möglich, müsste hierfür jedoch einiges umprogrammieren. Ich werde schauen, ob ich zum Ende hin noch Zeit dazu habe.
> Dasselbe für y oder noch schöner: Das Programm berechnet
> in dem gegebenen Intervall [mm]die Werte für y_{\min}[/mm] und
> [mm]y_{\max}[/mm] selbst und wählt die y-Skala automatisch.
Das ist eine Idee, die ich bei weiterer Programmierung berücksichtigen werde.
>
> Bei der Auswertung könnte man vielleicht den Faktor 1
> weglassen. Sieht schicker aus...
Werde es so einrichten, ist kein großer Aufwand
>
> Bei allen Ableitungen steht "f(x) = " statt "f'(x)",
> "f''(x)" usw.
Das passiert wenn mann copy&paste macht ^^
>
> Gehört die lange Ausgabe der ganzen Funktionswerte dazu?
> Oder ist das eine Debug-Ausgabe? Ist etwas irritierend,
> Tausende Zahlen ausgegeben zu bekommen.
War eine Debug-Ausgabe, ich hatte Probleme mit der Zeichnung und musste mir deswegen alle Berechnungen ansehen.
>
> Im Koordinatensystem sollten die Pfeile nur nach oben und
> rechts zeigen, nicht nach links und unten. Kann man evtl.
> die Achsen beschriften?
Meinst du mit Achsenbeschriftung x und y? das sollte kein problem sein!
Ich wusste nicht, dass man die Pfeile nur nach oben und rechts macht ^^, werde den Rohling neu herrichten!
>
> Kann man Schriftgröße und Größe der getexten Formeln besser
> anpassen?
Werde es versuchen.
> Fehler: "Verhalten im Undendlichen"
> "Nach dem Newtonschen"
> "Nullpunkte"
>
danke für die Fehlerberichtigung
>
> Das ist mir so aufgefallen. Es sind natürlich Vorschläge
> dabei. Hauptsache ist, die Fehler sind weg.
>
>
> Gruß
> Martin
Danke nochmal für den ausführlichen Test. Nur so kann das Programm besser werden.
MfG
Gille
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:30 Sa 06.01.2007 | Autor: | Martin243 |
Hallo,
> Kannst du mir sagen, wo ich so eine Berechnung finde? Habe länger danach gesucht, bin aber nur auf das Newtonsche Verfahren gestoßen.
Für kubische Gleichungen gibt es die Cardanische Formel. Einfach p und q, dann die Diskriminante D ausrechnen und dann eine Fallunterscheidung machen.
Für biquadratische Gleichungen (also 4. Grades) gibt es auch eine Formel, etwas aufwändiger, aber da ist sogar Pseudocode dabei.
Freut mich, wenn ich helfen kann.
Mach dir mal keinen Stress mit irgendwelchen Verzierungen, wenn das Ganze nur fehlerfrei funktioniert.
Ach ja, noch eine Gemeinheit:
Wenn ich eine Funktion 2. Grades wünsche, als führenden Koeffizienten aber 0 angebe, dann will er wohl auch nicht mehr.
Gruß
Martin
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 00:06 So 07.01.2007 | Autor: | Gille |
Habe an der Variable ein $ vergessen, sollte nun klappen, muss da nur noch was mit dem Verhalten regeln.
|
|
|
|