algorytm.org

Algorytm Hornera (współczynniki dzielenia)

Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Algorytm Hornera (współczynniki dzielenia)
Ocena użytkowników:***** / 6
SłabyŚwietny 
Wpisany przez Tomasz Lubiński, 08 sierpnia 2005 21:38

Algorytm Hornera pozwala na obliczenie współczynników z dzielenia wielomianu postaci:
W(x)=a_nx^n+...+a_1x+a_0
gdzie n oznacza stopień wielomanu przez wielomian postaci (x-a)b. Jeżeli porównamy współczynniki przy tych samych potęgach x z następującej zależności:
\sum_{k=0}^{n}{a_kx^k}=\left(\sum_{k=0}^{n-1}{b_{k+1}x^k}\right)(x-a)+b_0
to otrzymamy następujące wzory na współczynniki:
\begin{array}{cc} b_k =a_{k+1} + b_{k+1} & \text{ dla } k = 0,1,...,n-1\\ b_{k-1} = a_k & \text{ dla } k = n \end{array}
Przykład:
Wielomian W(x)=x3-2x2-5x+5. Podzielimy wielomianem (x-2)2.
b2=a3=1
b1=b2*2+a2=0
b0=b1*2+a1=-5
Zatem po podzieleniu W(x)/(x-2) otrzymujemy x2-5, ale mieliśmy go podzielić przez (x-2)2, zatem otrzymany wynik musimy jeszcze raz podzielić jak poprzednio.
c1=b2=1
c0=b1*2+a1=2
I otrzymujemy ostateczny wynik: x+2

Implementacje
AutorJęzyk
programowania
KomentarzOtwórzPobierzOcena
Tomasz LubińskiC/C++
.cpp
.cpp
***** / 6
Tomasz LubińskiDelphi/PascalBorland Delphi 5
.pas
.pas
***** / 2
Tomasz LubińskiJava
.java
.java
***** / 1
 
Dodaj własną implementację tego algorytmu
  • Zaloguj się na stronie
Plik:
Język
programowania:
Komentarz:
  By móc dodać implementacje zaloguj się na stronie

Poprawiony: 25 września 2012 14:42
Dodaj komentarz