Добавил:
Sergey__782
Здесь представлены мои работы, надеюсь они Вам помогут, всех благ!
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:чм 2 / чм2
.cpp#include <iostream>
#include <cmath>
using namespace std;
double lgr(int n, double y[], double x[], double z) {
double r[4];
double b = 0;
for (int i = 0; i<n; i++) {
r[i] = y[i];
b = r[0];
}
for (int j = 0; j<(n-1); j++) {
for (int i = (j +1); i<n; i++) {
r[i] = ((z-x[j]) * r[i] - ((z - x[i]) * r[j])) / (x[i] - x[j]);
b = r[i];
}
}
return b;
}
int main () {
double y [] = {-1.8160, -1.4630, -1.0770, -0.6565};
double x [] = {0.80, 0.85, 0.90, 0.95};
double LL, d=1, eps=1E-3, z= 0.81, n=2;
double L = lgr (1, y, x, z);
cout << "Степень " << "Pk(x) " << "Погрешность" << endl;
do {
if (n > sizeof(y)) break;
LL = L;
L = lgr(n, y, x, z);
d = abs(LL - L);
n++;
cout << " " << n - 2 << " " << L << " " << d << endl;
} while (d>eps);
cout << "3a n-2 (" << n-2<<") итерации получено значение " << L << " с точностью " << d << endl;
return 0;
}