C ++程序使用拉格朗日公式实现逆插值
在本教程中,我们将讨论一个使用Lagrange公式实现逆插值的程序。
逆插值法定义为从给定值的依存值中找出一个未知变量的两个列表值之间的自变量值的方法。
示例
#include <bits/stdc++.h>
using namespace std;
//结构化x和y的值
struct Data {
double x, y;
};
//计算逆插值
double calc_invinter(Data d[], int n, double y){
double x = 0;
int i, j;
for (i = 0; i < n; i++) {
double xi = d[i].x;
for (j = 0; j < n; j++) {
if (j != i) {
xi = xi * (y - d[j].y) / (d[i].y - d[j].y);
}
}
x += xi;
}
return x;
}
int main(){
Data d[] = {
{ 1.27, 2.3 },
{ 2.25, 2.95 },
{ 2.5, 3.5 },
{ 3.6, 5.1 }
};
int n = 6;
double y = 4.5;
cout << "Value of x (y = 4.5) : " << calc_invinter(d, n, y) << endl;
return 0;
}输出结果
Value of x (y = 4.5) : 2.51602
热门推荐
10 同事换单位简短祝福语
11 谢谢朋友的祝福语简短
12 立秋节气简短祝福语
13 新房祝福语简短10字
14 长辈新年祝福语大全简短
15 新年给大家简短祝福语
16 生日祝福语简短独特姑姑
17 芭比的婚礼祝福语简短
18 邀请新人祝福语简短英文