Частина тексту файла (без зображень, графіків і формул):
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра ЕОМ
/
ЗВІТ
до лабораторної роботи № 6
з дисципліни
" AЛГОРИТМИ ТА МЕТОДИ ОБЧИСЛЕНЬ"
Львів – 2016
ЗАВДАННЯ
Обчислення значення многочлена -схема Горнера і рекурсивний алгоритм, який реалізує метод попереднього опрацювання коефіцієнтів для унімодальних многочленів.
Лістинг програми:
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
void input_coef(double& coef)
{
cout << "-> ";
cin >> coef;
}
double gorner(vector<double> nabCoef, double x)
{
double a = nabCoef.back();
nabCoef.pop_back();
return nabCoef.empty() ? a : a + x * gorner(nabCoef, x);
}
int main()
{
int n;
cout << "Enter number of coefficients: ";
cin >> n;
if (n > 0)
{
vector<double> nabCoef(n);
cout << "\nEnter coefficients:\n";
for_each(nabCoef.begin(), nabCoef.end(), input_coef);
cout << "Enter x value: ";
double x;
if (!(cin >> x)) return 1;
cout << "Answer: " << gorner(nabCoef, x) << endl << endl;
}
else cout << "ERROR";
system ("pause");
return 0;
}
Результат виконання програми:
/
Висновок: на даній лабораторній роботі я засвоїла обчислення значення многочлена -схему Горнера і рекурсивний алгоритм, який реалізує метод попереднього опрацювання коефіцієнтів для унімодальних многочленів.