C++ Bc. 13: Porovnání verzí
Bez shrnutí editace |
m odkaz na wikipedii |
||
(Není zobrazeno 12 mezilehlých verzí od 3 dalších uživatelů.) | |||
Řádek 1: | Řádek 1: | ||
;[http://en.wikipedia.org/wiki/Horner_scheme Hornerovo schéma] | |||
Napište | Napište dvě funkce. Funkci <tt>polynom()</tt>, která počítá pro zadaný argument <math>x</math> hodnotu polynomu | ||
<math>P_n(x) = a_n\cdot x^n + a_{n-1}\cdot x^{n-1} + \ldots + | <math>P_n(x) = a_n\cdot x^n + a_{n-1}\cdot x^{n-1} + \ldots + | ||
a_2\cdot x^2 + a_1\cdot x + a_0 </math> | a_2\cdot x^2 + a_1\cdot x + a_0 </math> | ||
Pro výpočet použijte ''Hornerovo schéma | Pro výpočet použijte ''Hornerovo schéma'', které postupným uzávorkováním umožňuje výpočet polynomu bez explicitního výpočtu mocnin <math>x^i.</math> | ||
Například polynom | Například polynom | ||
Řádek 21: | Řádek 21: | ||
double polynom(double x, const std::vector<double>& a); | double polynom(double x, const std::vector<double>& a); | ||
Příklad: <math>P_4(0.3) = 7\cdot 0.3^4 + 2\cdot 0.3^3 + | |||
5\cdot 0.3^2 + 2\cdot 0.3 + 9 = | 5\cdot 0.3^2 + 2\cdot 0.3 + 9 = 10.1607</math> | ||
Dále napište funkci <tt>soucet(),</tt> která sčítá dva polynomy | |||
<math>P_{\max~{q,r}}(x) = Q_q(x) + R_r(x)</math> | |||
void soucet(const std::vector<double>& q, const std::vector<double>& r, | |||
std::vector<double>& p); | |||
[ [[C++ Bc.|Zpět]] | [[C++ Bc. 13 cpp|C++]] | [[C++ Bc. 14|Další]] ] | |||
[[Kategorie:Programování]] |
Aktuální verze z 10. 10. 2006, 13:15
Napište dvě funkce. Funkci polynom(), která počítá pro zadaný argument hodnotu polynomu
Pro výpočet použijte Hornerovo schéma, které postupným uzávorkováním umožňuje výpočet polynomu bez explicitního výpočtu mocnin
Například polynom
můžeme zapsat jako
Pro ukládání koeficientů polynomu použijte standardní kontejner std::vector<double>
double polynom(double x, const std::vector<double>& a);
Příklad:
Dále napište funkci soucet(), která sčítá dva polynomy
void soucet(const std::vector<double>& q, const std::vector<double>& r, std::vector<double>& p);