PYI_R_W14_M30 Schemat Hornera - efektywna metoda obliczania wartości wielomianów
Implementacja schematu Hornera - wersja iteracyjna
Jak już wiemy, schemat Hornera jest wykorzystywany do obliczania wartości wielomianów. Wykorzystamy tę metodę w czasie bieżącej lekcji.
Wielomian, którego stopień jest równy , składa się z składników.
A oto przykładowy wielomian trzeciego stopnia:
Dla x = 2 jego wartość wynosi:
Aby obliczyć wynik, trzeba sześć razy wykonać operację mnożenia oraz trzykrotnie operacje dodawania:
Zapiszemy algorytm tradycyjny, dzięki któremu będziemy mogli obliczyć wartość takiego wielomianu. W liście, która jest jednym z parametrów funkcji, współczynniki przy niewystępujących potęgach w wielomianie uzupełniamy zerami.
Zdefiniujmy funkcję, która wykorzystując ten algorytm obliczy wartość wielomianu.
Zmodyfikujmy zapisaną funkcję w taki sposób, by obliczyć, ile operacji podstawowych było niezbędnych podczas wyznaczania wartości wielomianu.
Obliczanie wartości wielomianu z zastosowaniem schematu Hornera
Schemat Hornera optymalizuje ilość operacji arytmetycznych niezbędnych do obliczenia wartości wielomianu.
Wykorzystując go otrzymujemy wzór:
Kolejne współczynniki:
są mnożnikami potęg zmiennej x, zapisanymi od lewej do prawej strony wielomianu. Poszczególne wyrazy wielomianu (jednomiany) są zapisane od najwyższej potęgi zmiennej x do najniższej.
Po przekształceniu przykładowego wielomianu z wykorzystaniem schematu Hornera okazuje się, że w celu wyznaczenia wartości całego wyrażenia konieczne jest wykonanie trzech operacji mnożenia i trzech operacji dodawania:
Zapiszemy algorytm obliczania wartości wielomianu za pomocą wersji iteracyjnej schematu Hornera.
Zdefiniujmy funkcję, która wykorzystując ten algorytm pozwoli nam obliczyć wartość wielomianu. Stopień wielomianu to najwyższa potęga x'a w tym wielomianie. W liście, która jest jednym z parametrów, współczynniki przy niewystępujących potęgach w wielomianie uzupełniamy zerami. Wówczas możemy pominąć podawanie stopnia jako parametru funkcji, gdyż będziemy mogli obliczyć go ze wzoru stopien = liczba współczynników -1.
Możemy również sprawdzić, ile operacji podstawowych wykonujemy w tej funkcji:
Słownik
brytyjski matematyk żyjący w latach -; w wieku lat został asystentem nauczyciela w szkole w Bristolu, a w roku założył własną szkołę w Bath; podał sposób wyznaczania wartości wielomianu z wykorzystaniem minimalnej liczby operacji możenia
wyrażenie algebraiczne będące sumą jednomianów, czyli wyrażeń postaci <math
najwyższa potęga przy zmiennej, która nie jest równa zero
przepis postępowania prowadzący do rozwiązania ustalonego problemu, określający ciąg czynności elementarnych, które należy w tym celu wykonać
technika programowania polegająca na powtarzaniu tych samych operacji w pętli określoną liczbę razy lub do momentu, aż zostanie spełniony zadany warunek
technika programowania polegająca na odwoływaniu się procedur lub funkcji do samych siebie, aż do momentu spełnienia warunku podstawowego
przypadek, dla którego funkcja rekurencyjna nie wywołuje samej siebie, a zamiast tego zwraca z góry określoną wartość
moment, gdy funkcja rekurencyjna zwraca konkretną wartość zamiast kolejnego wywołania rekurencyjnego
(ang. namespace) – miejsce w pamięci operacyjnej, w której przechowywana jest dana zmienna; najczęściej przestrzeń nazw związana jest z funkcją, a zmienne używane w niej są widoczne tylko w obrębie tej przestrzeni – jest to „zakres obowiązywania” tych zmiennych
(ang. immutable) sekwencja lub zmienna, która jest niemodyfikowalna „w miejscu”, a więc nie można zmienić żadnego z jej elementów wewnątrz, trzeba stworzyć nowy obiekt, który zawiera zmienione elementy