在本教程中,我们将讨论实现线性外推的程序。
外推定义为某个功能所需的值超出函数定义的下限或上限的过程。
在线性外推的情况下,使用函数图上的切线确定所需值,可以找到超出范围的值。应用时,线性外推得出的结果非常准确。
#include <bits/stdc++.h>
using namespace std;
//结构化x和y的值
struct Data {
double x, y;
};
//计算线性外推
double calc_extrapolate(Data d[], double x){
double y;
y = d[0].y
+ (x - d[0].x)
/ (d[1].x - d[0].x)
* (d[1].y - d[0].y);
return y;
}
int main(){
Data d[] = { { 1.2, 2.7 }, { 1.4, 3.1 } };
double x = 2.1;
cout << "Value of y (x = 2.1) : " << calc_extrapolate(d, x) << endl;
return 0;
}输出结果
Value of y (x = 2.1) : 4.5