计算方法_拉格朗日插值_C++实现_方法3

来源:互联网 发布:jojo超像可动淘宝 编辑:程序博客网 时间:2024/05/29 08:36
#include<iostream>using namespace std;int main(){/**********************************************************申明变量 */ float x;//插值float p[10][2];//已知(x0,y0),(x1,y1)...int n;//输入已知插值组数(即有几个已知点)float y,t;int k;/**********************************************************输入数据*/ cout<<"输入插值组数(即有几个已知点):"<<endl;cin>>n;cout<<"输入"<<n<<"组已知插值数(X,Y)"<<endl;    for(int i=0;i<n;i++){   cin>>p[i][0]>>p[i][1];}cout<<"输入插值:"<<endl;cin>>x;/**********************************************************计算方法 */ y=0;k=0;for(k=0;k<n;k++){t=1;for(int i=0;i<n;i++){if(i!=k){t=t*(x-p[i][0])/(p[k][0]-p[i][0]); //key step}}y=y+p[k][1]*t;}/**********************************************************打印结果 */ cout<<"插值结果:"<<y<<endl;return 0;}

0 0
原创粉丝点击