Polynomdivision mit Textverarbeitung

Aus Augenbit


Vorbetrachtung: Wir basteln uns ein Polynom

Gesucht ist ein Polynom f dritten Grades mit den Nullstellen

x_1 =-5; x_2 =2 und x_3 =1

Lösungsansatz:

f(x) =(x +5) *(x -2) *(x -1)

Jede der drei Nullstellen bewirkt beim Einsetzen in die Gleichung, dass genau eine der drei Klammern zu 0 wird - und damit das ganze Produkt aller drei Klammern.

Ausmultiplizieren der beiden vorderen Klammern:

f(x) =(x^2 +5x -2x -10) *(x -1)
f(x) =(x^2 +3x -10) *(x -1)

Ausmultiplizeren dieser beiden Klammern:

f(x) =x^3 +3x^2 -10x -x^2 -3x +10
f(x) =x^3 +2x^2 -13x +10

Man erkennt, dass beim Ausmultiplizieren das absolute Glied 10 entstanden ist als Produkt der negativ genommenen Nullstellen:

5 *(-2) *(-1) = 10

Und jetzt umgekehrt:

Vom Polynom zu den Nullstellen durch Polynomdivision Gesucht sind die Nullstellen des Polynoms

f(x) =x^3 +2x^2 -13x +10

Gezieltes Erraten einer Nullstelle

Die Grundidee besteht nun darin, eine Nullstelle x_1 zu "erraten" und dann das Polynom durch den Ausdruck (x -x_1) zu teilen, um ein "Restpolynom" geringeren Grades zu erhalten, das dann die eventuell außerdem noch vorhandenen Nullstellen besitzt.

Es bietet sich an, diejenigen ganzen Zahlen als Nullstellen zu überprüfen, die als Faktor im absoluten Glied 10 enthalten sind. Dies sind die Zahlen: +1, -1, +2, -2, +5, -5, +10 und -10.

Überprüfung der Zahl 1 führt zum Erfolg:

f(1) =1^3 +2*1^2 -13*1 +10 =1 +2 -13 +10 =0

Die eigentliche Polynomdivison beginnt nun mit der Aufgabe, folgenden Ausdruck zu berechnen:

(x^3 +2x^2 -13x +10) / (x -1) = ?

Hierfür gibt es nun verschiedene Verfahrensvarianten, die im Einzelnen vorgestellt und anschließend unter methodischen Gesichtspunkten miteinander verglichen werden sollen.

Polynomdivision durch Koeffizientenvergleich

Ansatz: Die Division eines Polynom 3. Grades durch (x -1) ergibt als Ergebnis ein Polynom 2. Grades ax^2 +bx +c mit den zunächst unbekannten Koeffizienten a, b und c:

(x^3 +2x^2 -13x +10) / (x -1) = ax^2 +bx +c | *(x -1)
(x^3 +2x^2 -13x +10) = (ax^2 +bx +c) *(x -1)
x^3 +2x^2 -13x +10 = ax^3 +bx^2 +cx -ax^2 -bx -c
x^3 +2x^2 -13x +10 = ax^3 +(b -a)x^2 +(c -b)x -c

Man erkennt sofort durch Vergleich der Koeffizienten vor x^3:

a =1

Durch Vergleich des absoluten Gliedes erhält man:

-c =10
c =-10

Durch Vergleich der Koeffizienten in den quadratischen Termen erhält man

2 =b -a
2 =b -1
b =3

Zur Kontrolle kann man noch die Koeffizienten in den linearen Termen vergleichen:

-13 =c -b
-13 =-10 -3

Ergebnis:

ax^2 +bx +c =x^2 +3x -10

Man sieht, dass dies genau dem "Zwischenpolynom" entspricht, das beim Basteln des Polynoms durch Ausmultiplizieren der beiden ersten Klammern entstanden ist. Man kann nun die pq-Formel auf das Polynom x^2 +3x -10 anwenden, um die beiden anderen Nullstellen zu berechnen.

Verallgemeinerung auf beliebige Polynome 4. Grades

Das vorgestellte Verfahren lässt sich verallgemeinern. Sei z eine bekannte Nullstelle eines gegebenen Polynoms vierten Grades mit den Koeffizienten a_4, a_3, a_2, a_1 und a_0. Das ganzrationale Ergebnispolynom dritten Grades besitze die Koeffizienten b_3, b_2, b_1 und b_0.

a_4x^4 +a_3x^3 +a_2x^2 +a_1x +a_0
=(b_3x^3 +b_2x^2 +b_1x +b_0) *(x -z)
=b_3x^4 +b_2x^3 +b_1x^2 +b_0x -b_3*z*x^3 -b_2*z*x^2 -b_1*z*x -b_0*z
=b_3x^4 +(b_2 -b_3*z)x^3 +(b_1 -b_2*z)x^2 +(b_0 -b_1*z)x -b_0*z

Durch Koeffizientenvergleich erhält man:

b_3 =a_4
b_2 -b_3*z =a_3
b_2 = a_3 +b_3*z
b_2 = a_3 +a_4*z
b_1 -b_2*z =a_2
b_1 =a_2 +b_2*z
b_1 =a_2 +(a_4*z +a_3)*z
b_1 =a_2 +a_3*z +a_4*z^2
b_0 -b_1*z =a_1
b_0 =a_1 +b_1*z
b_0 =a_1 +(a_2 +a_3*z +a_4*z^2)*z
b_0 =a_1 +a_2*z +a_3*z^2 +a_4*z^3

Zur Kontrolle kann man noch ausnutzen:

-b_0*z =a_0
b_0 =-a_0

Beispiel:

(x^4 -1) =(b_3x^3 +b_2x^2 +b_1x +b_0) *(x -1)
b_3 =a_4 =1
b_2 =a_3 +b_3*z =0 +1*1 =1
b_1 =a_2 +a_3*z +a_4*z^2 =0 +0 +1*1^2 =1
b_0 =a_1 +a_2*z +a_3*z^2 +a_4*z^3 =0 +0 + 0 +1*1^3 =1

Kontrolle: b_0 =-a_0 =-(-1) =1

Ergebnis:

(x^4 -1) =(x^3 +x^2 +x +1)*(x -1)

Verallgemeinerung auf Polynome vom Grade n mit Nullstelle z

Ansatz:

(a_nx^n +a_{n-1}x^{n-1} + ... +a_1x +a_0) =(b_{n-1}x^{n-1} +b_{n-2}x^{n-2} + ... +b_1x +b_0) *(x -z)

Dann gilt für i \in \N mit 0 <= i < n :

b_i =a_n*z^{n-1} +a_{n-1}*z^{n-2} + ... +a_{i+2}*z +a_{i+1}


Methodische Anmerkungen

Bei der üblichen Polynomdivision entsteht eine "Treppenstruktur", bei der das korrekte Untereinanderschreiben entsprechender Ausdrücke wichtig ist - teilweise über mehrere Zeilen und "Leerräume" hinweg. Dies ist am PC - speziell bei Verwendung eines Screenreaders oder einer Vergrößerungssoftware - schwierig. Auch die "künstliche" Verpackung in eine Tabellenstruktur ist keine wirkliche Erleichterung.

Die konventionelle Form der Polynomdivision, die i.d.R. "von Hand" durchgeführt wird, kommt dafür mit geringem Schreibaufwand aus. Dieser Vorteil ist allerdings bei Verwendung einer Textverarbeitung nicht so entscheidend, da sie die Möglichkeit bietet, auch größere Ausdrücke von einer Zeile in die nächste einfach und schnell zu kopieren.

Eben diese Möglichkeit ist bei dem hier vorgestellten Verfahren gut anwendbar, denn hier wird die Lösung schrittweise von einer Zeile zur nächsten Zeile entwickelt - ohne auf Leerräume und Spalten Rücksicht nehmen zu müssen.


Ulrich Kalina, blista Marburg, 15.03.2008