fork download
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. using namespace std;
  5.  
  6. // Funkcja 1: zwraca i wypisuje współczynniki wielomianu
  7. // W(x) = a3*x^3 + a2*x^2 + a1*x + a0
  8. vector<double> wspolczynnikiWielomianu() {
  9. vector<double> a;
  10. a.push_back(1); // a3
  11. a.push_back(2); // a2
  12. a.push_back(3); // a1
  13. a.push_back(4); // a0
  14.  
  15. cout << "Wspolczynniki wielomianu:" << endl;
  16. cout << "a3 = " << a[0] << endl;
  17. cout << "a2 = " << a[1] << endl;
  18. cout << "a1 = " << a[2] << endl;
  19. cout << "a0 = " << a[3] << endl;
  20.  
  21. return a;
  22. }
  23.  
  24. // Funkcja 2: algorytm Hornera
  25. double horner(const vector<double>& a, double x) {
  26. double wynik = a[0];
  27.  
  28. for (int i = 1; i < a.size(); i++) {
  29. wynik = wynik * x + a[i];
  30. }
  31.  
  32. return wynik;
  33. }
  34.  
  35. int main() {
  36. vector<double> a = wspolczynnikiWielomianu();
  37.  
  38. double x;
  39. cout << "Podaj argument x: ";
  40. cin >> x;
  41.  
  42. double wynik = horner(a, x);
  43.  
  44. cout << "Wartosc wielomianu W(x) = " << wynik << endl;
  45.  
  46. return 0;
  47. }
  48.  
Success #stdin #stdout 0.01s 5316KB
stdin
2
stdout
Wspolczynniki wielomianu:
a3 = 1
a2 = 2
a1 = 3
a0 = 4
Podaj argument x: Wartosc wielomianu W(x) = 26