12.07.2015 Views

C++ - VideoTutorials-bg.com

C++ - VideoTutorials-bg.com

C++ - VideoTutorials-bg.com

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

с начална стойност null_val. Ще дефинираме шаблон на фукция от повисокред accumulate, чрез който да се реализира натрупване наелементите на списъка l чрез операцията op.template T accumulate(T (*op)(T, T), T null_val, LList& l){T s = null_val;l.IterStart();elem *p = l.Iter();while (p){s = op(s, p->inf);p = p->link;}return s;}Задача 151. Като се използва функцията от по-висок ред accumulate,да се напише програма, която намира стойността на полинома P n (x) =(...(a 0 x + a 1 )x + ... +a n-1 )x + a n за дадено x по метода на Хорнер.Полиномът се задава чрез списък от реални числа a 0 , a 1 , ..., a n-1 , a nи реалното число x. В сила е P n (x) = x.P n-1 (x) + a n . Операцията op щедефинираме по следния начин:op: term x coefx.term + coefПрограма Zad151.cpp решава задачата.// Program Zad151.cpp#include #include "L-List.cpp"template T accumulate(T (*op)(T, T), T null_val, LList& l){T s = null_val;l.IterStart();elem *p = l.Iter();while (p){s = op(s, p->inf);}p = p->link;160

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!