- 8
- 0
- 约2.01千字
- 约 3页
- 2018-03-11 发布于河南
- 举报
三次样条插值算法
//三次样条插值算法
#includeiostream.h
void main()
{
cout输入节点个数:;
int num;
cinnum;
int n=num-1;
double *x=new double[num];
double *y=new double[num];
cout按序依次输入各处节点及函数值endl;
for(int i=0;i=n;i++)
cinx[i]y[i];
double *h=new double [num];
for(i=0;i=n-1;i++)
h[i]=x[i+1]-x[i];
double *a1=new double[num];
double *b1=new double[num];
cout请输入边界。按1输入第一种边界条件,按2输入第二种边界条件: ;
int pd;
cinpd;
if(pd==1)
{
cout按顺序输入两端点的微商:endl;
int k1,k2;
cink1k2;
a1[0]=0;a1[n]=1;b1[0]=2*k1;b1[n]=2*k2;
}
else
{
cout按顺序输入两端点的二阶微商:endl;
int t1,t2;
cint1t2;
a1[0]=1;a1[n]=0;b1[0]=3*(y[1]-y[0])/h[0]
原创力文档

文档评论(0)