Algorytm Hornera (Horner scheme) to sposób obliczania wartości wielomianu dla nadej wartości argumentu wykorzystujący minimalną liczbę mnożeń. Jest to również algorytm dzielenia wielomianu W(x) przez dwumian (x-c). Schemat ten wiązany jest z nazwiskiem Hornera, był jednak już znany Newtonowi, Ruffiniemu i matematykom chińskim w XII wieku. Dla wielomianu stopnia n należy wykonać n mnożeń i n dodawań. Schemat Hornera jest optymalny pod względem liczby wykonywanych działań. def horner(L, left, right, x): """Wersja iteracyjna algorytmu Hornera. W(x) = L[left] + L[left+1]*x + L[left+2]*x*x + ... """ i = right result = L[i] while i > left: i = i - 1 result = result * x + L[i] return result Algorytm wykonujący zamianę liczb z systemu dwójkowego na dziesiętny. Specyfikacja: Dane: Liczba całkowita: n > 0 (stopień wielomianu). n+1-elementowa tablica liczb całkowitych: A[0...n] (współczynniki wielomianu, czyli cyfry liczby zapisanej w systemie binarnym). Wynik: Wartość wielomianu stopnia n dla argumentu 2 (liczba w systemie dziesiętnym). Funkcja w języku Python (prog2_10.py): def oblicz (A, n): w=A[0] for i in range(1,n+1): w=w*2+A[i] return w