Der Algorithmus soll den Funktionswert der zugehörigen Polynomfunktion an der Stelle x berechnen.
Mir liegt folgender Java Code vor :
Eingabe: Koezienten a[n], a[n-1], ..., a[0], Argument x
Java:
q = a [0];
for (i = 1; i <= n; i++) {
potenz = 1;
for (j = 1; j <= i*i; j++)
potenz = potenz * x;
q = a * potenz + q;
}
return q;
Die erste Frage ist :
Wie viele Multiplikationen und Additionen werden - in Abhängigkeit von n - mit
diesem Algorithmus benotigt, um den Wert der Polynomfunktion an einer beliebigen
Stelle x zu berechnen?
Hinweis:
Die Operationen, die von den for-Schleifen benutzt werden, um die Laufvariablen
zu verandern, brauchen nicht berucksichtigt werden.
Die zweite Frage ist :
Wie kann man den Algorithmus verbessern, sodass die Anzahl der Multiplikationen deutlich reduziert werden?
Hinweis: Maximales Ausklammern, Horner-Schema
Mir liegt folgender Java Code vor :
Eingabe: Koezienten a[n], a[n-1], ..., a[0], Argument x
Java:
q = a [0];
for (i = 1; i <= n; i++) {
potenz = 1;
for (j = 1; j <= i*i; j++)
potenz = potenz * x;
q = a * potenz + q;
}
return q;
Die erste Frage ist :
Wie viele Multiplikationen und Additionen werden - in Abhängigkeit von n - mit
diesem Algorithmus benotigt, um den Wert der Polynomfunktion an einer beliebigen
Stelle x zu berechnen?
Hinweis:
Die Operationen, die von den for-Schleifen benutzt werden, um die Laufvariablen
zu verandern, brauchen nicht berucksichtigt werden.
Die zweite Frage ist :
Wie kann man den Algorithmus verbessern, sodass die Anzahl der Multiplikationen deutlich reduziert werden?
Hinweis: Maximales Ausklammern, Horner-Schema