Polynom 6. Grades lösen

Hallo,
Ich habe folgendes Polynom:f(x)=x^6+ax^5+bx^4+cx^3+dx^2+ex+f
Dazu ist folgendes gegeben:
f(1)=1
f(2)=2
f(3)=3
f(4)=4
f(5)=5
f(6)=6

Jetzt soll ich sagen, was f(7) ist. Und nein, es ist nicht 7… Jetzt frage ich mich, wie ich das ausrechnen soll. Theoretisch würde es ja mit dem Gauß gehen, allerdings ist der Aufwand, diese gleichung so zu lösen recht groß. (Ich habs versucht und mich nach über ein DIN A4 Seite verrechnet und dann keine lust mehr :smiley:)
Wie ist dieses Polynom zu lösen?

Schöne Grüße
Julian

Nochmal in Ordentlich
f(x)=x^6+ax^5+bx^4+cx^3+dx^2+ex+f

f(1)=1
f(2)=2
f(3)=3
f(4)=4
f(5)=5
f(6)=6
f(7)=?

  1. Lineares Gleichungssystem mit den bekannten Werten aufstellen.
  2. Parameter durch Lösung des Gleichungssystems bestimmen.
  3. Ergebnis ausrechnen.
  1. Lineares Gleichungssystem mit den bekannten Werten
    aufstellen.
  2. Parameter durch Lösung des Gleichungssystems bestimmen.
  3. Ergebnis ausrechnen.

Was meinst du mit linearen Gleichungssystem aufstellen? Wie soll ich das machen?

Hallo,

Theoretisch würde es ja mit dem Gauß gehen,

richtig, und mit dieser Kenntnis des Lösungswegs ist die Aufgabe praktisch schon erledigt. Nur dieser Teil erfordert echtes Know-How. Die tatsächliche Auflösung des 6×6-LGS z. B. per Gaußelimination ist dagegen eine rein schematische Angelegenheit, mit der sich kein vernünftiger Mensch abquält. Das überläßt man einem Computer, denn solche Jobs kann der schneller und besser erledigen. Tipp das Ding also beherzt in ein CAS Deiner Wahl ein und lies am Ende das Ergebnis vom PC-Monitor ab. Wenn Du fähig bist, das LGS prinzipiell (d. h. mit viel Papier, Zeit und Geduld) auch von Hand zu lösen, ist das – finde ich – völlig legitim.

Gruß
Martin


Input (für Maxima):

kill(all)$

f(x) := x^6 + a\*x^5 + b\*x^4 + c\*x^3 + d\*x^2 + e\*x + f;

s: linsolve([f(1)=1, f(2)=2, f(3)=3, f(4)=4, f(5)=5, f(6)=6], [a, b, c, d, e, f]);

a: rhs(s[1])$
b: rhs(s[2])$
c: rhs(s[3])$
d: rhs(s[4])$
e: rhs(s[5])$
f: rhs(s[6])$

f(7);

Output:

[a=-21,b=175,c=-735,d=1624,e=-1763,f=720]
727

http://de.wikipedia.org/wiki/Maxima_%28Computeralgeb…

Hey,
danke für den Tipp, habe ich mir gleich mal gedownloadet. Allerdings scheiter ich daran, das einzutippen :confused:

Wenn ich das als algebraisches System, dann bekomme ich folgendes Ergebnis:
/* [wxMaxima: input start] */
algsys([f(x)=x^6+a*x^5+b*x^4+c*x^3+d*x^2+e*x+f, f(1)=1, f(2)=2, f(3)=3, f(4)=4, f(5)=5, f(6)=6], [a,b,c,d,e,f,x]);
/* [wxMaxima: input end] */

Was mache ich da falsch?

Was meinst du mit linearen Gleichungssystem aufstellen?

a \cdot x_i^5 + b \cdot x_i^4 + c \cdot x_i^3 + d \cdot x_i^2 + e \cdot x_i + f = y_i - x_i^6

Wie Martin schon schrieb, überlässt man die Lösung am besten einem Computer. Das kann sogar EXCEL.

Hallo Gurke,

Du suchst hier ein Interpolationspolynom. Suche nach „Lagrange-Polynom“ oder nach „Newton-Polynom“ und Du wirst diverse Rechenverfahren finden. Gauß geht bestimmt, aber wenn das zu langweilig ist, dann kannst Du ja mal die Methode der dividierten Differenzen ausprobieren:
http://de.wikipedia.org/wiki/Polynominterpolation#Be…

Beste Grüße
Zwergenbrot

Allerdings scheiter ich daran, das einzutippen :confused:

Hast Du auch die grafische wxMaxima-Bedienoberfläche mitdowngeloadet? Also wenn Du auf Deinem Desktop ein Symbol mit einem roten M in einem hellgraublauen Kreis siehst, dann lautet die Antwort „ja“ und die Sache ist gut. Wenn Du es da genau so reinkopierst sollte es auch funktionieren.

Was mache ich da falsch?

Keine Ahnung. Für lineare Gleichungssysteme ist jedenfalls linsolve zuständig. Du kannst da auch nicht Irgendwas nach Gutdünken eintippen und dann erwarten, dass das System Deinen Wunsch schon richtig interpretierten wird. Wie bei jeder Programmiersprache kommst es da auf jedes Komma und jede Klammer an. Beispielsweise bedeutet „=“ etwas ganz anderes als „:=“, und „:“ hat wieder eine andere Funktion (aber welche, ist natürlich haargenau festgelegt, und diese Definitionen muss man kennen – sonst „no chance“). Es gibt aber deutschsprachige Tutorials im WWW, die Du über Suchmaschinen finden kannst. Mit ein paar Stunden für eine erste Einarbeitung in die Grundlagen der Bedienlogik und der Sprachsyntax solltest Du schon rechnen. Die sind aber gut investiert, denn wenn Du das Ding einigermaßen gut beherrschst, hast Du ein sehr mächtiges Werkzeug zur Hand, mit dem Du noch weit mehr machen kannst, als nur mal fix irgendwelche Übungsaufgaben zu überprüfen. Steig am besten mit einem Tutorial ein, das Dir vom Gefühl her gut gefällt und arbeite Dich dann konsequent von den einfachsten Beispielen darin voran, soweit wie Du magst und matheverständnismäßig mitkommst. Der Rest erledigt sich dann mit Erfahrung und Recherchieren im Hilfesystem mehr oder weniger von selbst.

Also dann gegebenenfalls viel Spaß… :smile:
Martin

1 Like

Ah, ich musste auf Zellen auswerten klicken :smiley: Ja, geht ganz einfach :smiley:

Vielen Dank :smiley:

Hallo,

Ah, ich musste auf Zellen auswerten klicken :smiley: Ja, geht ganz einfach :smiley:

wie ich sehe hast Du die Sache im Griff… smile. Hätte ich aber auch gleich dazuschreiben können, sorry. Der Tastaturshortcut (zum Neuauswerten aller sichtbaren Zellen) ist übrigens Ctrl-R. Den benutze ich beim Experimentieren in Maxima praktisch ständig.

Eine interessante Option wäre hier übrigens, sich das Ergebnis grafisch plotten zu lassen:

kill(all)$
globalsolve: true$

/\* solve problem \*/
p(x) := x^6 + a\*x^5 + b\*x^4 + c\*x^3 + d\*x^2 + e\*x + f$
linsolve([p(1)=1, p(2)=2, p(3)=3, p(4)=4, p(5)=5, p(6)=6], [a, b, c, d, e, f])$
p(x);
p(7);

/\* setup and show plot \*/
axisx: [x, 0, 10]$
axisy: [y, -30, 800]$ 
dots: [discrete, [1, 2, 3, 4, 5, 6, 7], [1, 2, 3, 4, 5, 6, p(7)]]$ 

plot2d([p(x), dots], axisx, axisy, [style, lines, points], [point\_type, bullet]);

Die vier Zeilen unter „solve problem“ plus „globalsolve: true“ dürfte der kompakteste Code sein, der Dein Problem löst.

Ganz witzig ist auch, sich zu überlegen, welche Folge ein Rauswurf des x6-Polynomglieds hat. Weil man das Ergebnis ja sofort ohne irgendeine Rechnung voraussagen und es sich anschließend von Maxima bestätigen lassen kann („0*“ vor dem x^6 einfügen und anschließend Ctrl-R drücken – mehr ist nicht zu tun.) Die umgekehrte Richtung geht natürlich auch: Polynomglieder höherer Ordnung hinzufügen und sich anschauen, wie das die Koeffizienten a, b, c… und den Wert von p(7) verändert. Man glaubt gar nicht, wieviel man bei solchen Spielereien lernen kann.

So, jetzt ist aber wirklich gut… :smile:

Schönes WE
Martin