📄 hermite.cpp
字号:
#include<iostream.h>
#define N 10
double Hermite(double x,double xj[N],double yj[N],double mj[N])
{ int k,j;
double res,ldao,a,lix,b;
res=0.0;
for(j=0;j<N;j++)
{
ldao=0.0;
lix=1.0;
for(k=0;k<N;k++)
{
if(k!=j)
{
lix=lix*(x-xj[k])/(xj[j]-xj[k]);
ldao=ldao+1/(xj[j]-xj[k]);
}
}
a=(1-2*(x-xj[j])*ldao)*(lix*lix);
b=(x-xj[j])*(lix*lix);
res=res+(yj[j]*a+mj[j]*b);
}
return(res);
}
int main()
{ double ini,res;
double x[N]={0.10,0.20,0.30,0.40,0.50,0.60,0.70,0.80,0.90,1.00};
double y[N]={0.904837,0.818731,0.740818,0.670320,0.606531,0.548812,0.496585,0.449329,0.406570,0.367879};
double m[N]={-0.904837,-0.818731,-0.740818,-0.670320,-0.606531,-0.548812,-0.496585,-0.449329,-0.406570,-0.367879};
cout<<"please input a x:\n";
cin>>ini;
res=Hermite(ini,x,y,m);
cout<<"the result is:"<<res<<endl;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -