Frage von Crysali, 39

Quadratisches Gleichungssystem -> Quadratrische Gleichung?

Ich muss für die Uni ein Programm schreiben, dass ein quadratisches Gleichungssystem löst. Jedoch steht in der Augabenstellung nur etwas von a, b und c aus der Formel ax²+bx+c als Benutzerinegabe, also so, als ob es nur eine Gleichung gäbe, beziehungsweise, es gibt keinen HInweis, dass es um mehrere quadratische Gleichungen geht.

Ist eine quadratische Gleichung das Gleiche wie ein quadratisches Gleichungssystem ? Meinen Recherchen nach scheint es "das Gleiche" zu sein, aber es scheint mir etwas zu einfach zum Programmieren.

Expertenantwort
von Willy1729, Community-Experte für Mathematik, 18

Hallo,

die Gleichung lautet ax²+bx+c=0, was aber meiner Auffassung nach eine quadratische Gleichung und kein Gleichungssystem ist. Zu einem System würden ja wohl mindestens zwei Gleichungen gehören. Da als Eingaben aber nur a, b und c gedacht sind (bei einem System von zwei Gleichungen bräuchtest Du ja wohl noch d, e und f, wird wohl dies gemeint sein.

Sollte sich leicht über die sogenannte abc-Formel programmieren lassen.

Viel Erfolg,

Willy

Kommentar von eddiefox ,

Hallo,

man könnte ax²+bx+c=0 als eine Schaar von Gleichungen ansehen, die mit ihren Koeffizienten variieren: jedem Tripel (a;b;c) ∈ ℝ*xℝ² wird die Gleichung ax²+bx+c=0 zugeordnet.

Dabei sind die den Tripeln (a;b;c) und (λa;λb;λc), λ∈ℝ* zugeordneten Gleichungen als äquivalent anzusehen, da sie die gleiche Lösungsmenge besitzen.

Vielleicht deswegen das Wort Gleichungs-"system"?

Gruss

Kommentar von Willy1729 ,

Das wäre eine Möglichkeit und klingt plausibel.

Vielen Dank für den Hinweis.

Antwort
von ProfFrink, 20

Anderererseits ist wiederum ein quadratisches Gleichungssystem wiederum so kompliziert, dass es als Programmieraufgabe kaum zumutbar ist.

Ganz spitzfindig könnte man ja auch sagen, dass ein quadratisches Gleichungssystem auch aus einer einzigen Gleichung bestehen kann. Beispielsweise besteht die Menge meiner Ehefrauen auch nur aus einem Element.

Dabei ist Deine Aufgabe ja nicht einfach damit getan, dass Du die p-q-Formel programmierst, sondern Du musst ja auch die Sonderfälle "keine Lösung im Rellen", "eine einzige Lösung im Rellen" und "zwei Lösungen" programmiertechnisch behandeln. Oder wenn Du komplexe Lösungen zulässt, dann muss Du immer Fallunterscheidungen für negative Radikaten programmieren. Wirst schon sehen, dass Du genug zu tun hast.

Kommentar von Crysali ,

Danke, die Fallunterscheidung anhand des Radikanten ( zwei Lösungen, eine Lösung, keine Lösung) habe ich bereits bedacht. Nach dem Professor ist es eine relativ einfache Aufgabe, sie erscheint mir persönlich aber einfach zu einfach, da man ja wirklich nur den Radikanten prüfen muss, also Fallunterscheidung und danach gegebenenfalls Nullstellen berechnet und einen String in die Console übergibt. Die Aufgabe war getaggt als "Mathematik", aber ich habe dennoch das Gefühl, etwas übersehen zu haben, es ist, wie gesagt, einfach zu einfach.

Apropos, ich benutze die Mitternachtsformel, nicht die p-q-Formel, hast du dazu zufälligerweise einen Kommentar ? Wird das (un)gerne gesehen oder völlig legitim ?

Kommentar von ProfFrink ,

Mitternachtsformel und p-q-Formel sind das gleiche. Es ist die Universallösung der quadratischen Gleichung. Gibt nichts besseres.

Kommentar von Crysali ,

Alles klar, danke!

Expertenantwort
von Rhenane, Community-Experte für Mathematik, 21

Sieht so aus, als ob Du nach Eingabe von a, b und c einfach die Nullstellen ausgeben sollst, also für ax²+bx+c=0 die x-Werte ermitteln.

Anders sähe es aus, wenn Du a,b und c ermitteln müsstest, dann wären 3 Gleichungen mit verschiedenen "(x,y)-Paaren" nötig.

Kommentar von ProfFrink ,

Genau! Das könnte gemeint sein. Das hätte dann schon etwas mehr Niveau als nur die Auflösung nach x. Und dann hätte man auch sofort mit drei Gleichungen zu tun.

Kommentar von Rhenane ,

Variante 2 wäre vom rechnerischen Gesichtspunkt etwas anspruchsvoller von der Programmierung her.

Nach den anderen Kommentaren zu urteilen, geht es wohl doch um Variante 1; also von der rechnerischen Seite ein überschaubarer Aufwand. Die Probleme liegen wohl eher im Übergang von der Eingabe zur Verarbeitung :)

Antwort
von surbahar53, 13

Offensichtlich handelt es sich um ein quadratisches Gleichungssystem mit einer Unbekannten. Dafür gibt es einfache Formeln.

Allerdings würde ich die Aufgabe nicht unterschätzen.

- Erkennung der Eingabe einer gültigen Zahl a,b,c

- was, wenn a sehr klein, d.h. das Ergebnis aufgrund der begrenzten Rechengenauigkeit falsch wird

- das gleiche gilt für b*b - 4*ac, kann nicht nur extrem klein, sondern auch negativ werden. Umstieg in die Welt der komplexen Zahlen ?

- fehlende Rechengenauigkeit : gibt es eine oder zwei Lösungen ?

Kommentar von Crysali ,

Danke, a, b und c werden über Konsoleneingabe genommen ( nach Aufgabenstellung), ich glaube aber nicht, dass ich komplexe Zahlen berücksichtigen soll, hatten wir in Mathematik 1 noch gar nicht. Fallunterscheidung mit dem Radikant habe ich auch berücksichtigt.

Über die Ungenauigkeit, was gibt es da noch zu beachten ? Ich nehme double ( das liefert so schöne ewig lange Zahlen), wäre diese Problem damit gelöst ?

Kommentar von surbahar53 ,

a, b und c über Konsoleneingabe nützt Dir nichts. Beispiel

"+3  5..34" ??

"-3  5 - . 34" ??
"-3  5 - 34" ??
" 1.2  .     3 - " ??
"1.22,55" ??

Auch bei double hat die CPU nur eine endliche Rechengenauigkeit. Es könnte also sein, dass bei einer Rechenart ein Overflow beim Exponenten auftritt.

Kommentar von Crysali ,

Hm, verstehe, da muss ich mir mein Programm nochmals anschauen, danke!

Antwort
von mx2000, 5

Hi Du, im Prinzip ist es ein lineares Gleichungssystem mit 2 Unbekannten, was auch nach Gauß lösbar sein müsste (umfangreicher Algorithmus).

Ich würde hier einfach nur die Faktoren a, b und c abfragen und das ganze in die Mitternachtsformel einsetzen:

http://www.mathebibel.de/mitternachtsformel

Keine passende Antwort gefunden?

Fragen Sie die Community