Witam!
Od dwóch dni siedzę nad zadaniem z informatyki i nie mogę dojść, jak je wykonać. Mam napisać program w Turbo Pascalu lub Delphi, który obliczałby wartości wielomianu dowlonego stopnia (n) dla dowolnego argumentu [schemat i algorytm Hornera].
Chodzi tu o zastosowanie Twierdzenia Hornera:
Liczba mnożeń i liczba dodawań przy obliczaniu wartości wielomianu stopnia n dla dowolnej wartości jest równa stopniowi wielomianu n.
Od razu mówię, że gdy to zobaczyłem w zeszycie u kumpla to mnie zatkało. Np. nie rozumiem w ogóle, czym jest tu z.
Teraz cytuję zawartość notatki z tego zeszytu:
Dane:
n- stopnień wielomianu (nieujemna liczba całkowita)
a0, a1, a2, ... , an - współczynniki wielomianu
z - wartość argumentu
Wynik:
wartość wielomianu stopnia n dla argumentu x:=z
Krok 1:
przyjmij współczynnik wielomianu przy najniższej potędze za początkową wartość, czyli przypisz y:=a0 (y- zmienna pomocnicza)
Krok 2:
n razy oblicz wartość dwumianu y:=y*z+a0 , dla kolejnych współczynników wielomianu (i=1,2,3,...,n , gdzie i oznacza zmienną, po której odbywają się działania - zmienna iteracyjna).
[tego kroku 2 wcale nie kapuję]
Jest jeszcze algorytm:
dane problemu ->
dane wejściowe ->
niech: i:=0 , y:=a0 ->
czy i=n?
tak -> koniec programu
nie - >
niech: i:=i+1 , y:=y*z+a0
i tu jest pętla: czy i=n?
Cały algorytm, ale zupełnie nie rozumiem owego y:=y*z+a0. Po co to? I jak to w ogóle rozpisać?
Zacząłem pisać w TP, ale na pobieraniu danych (n i kolejne współczynniki aż do an się skończyło).
Czy ktoś mógłby mnie poratować, bo ja już nie wiem, co mam robić???
Za pomoc będę bardzo wdzięczny
Pozdrawiam