急求二维矩阵三次样条插值的程序,要C或C++语言。望有注释!谢谢! 邮箱lsmann9@hotmail.com /*下面程序是C语言程序(标准C)*/计算给定M0,Mn值的三次样条插值多项式*/给定离散点(1.1,0.4),(1.2,0.8),(1.4,1.65),(1.5,1.8),M0=Mn=0,*/用M关系式构造三次样条插值多项式S(x),计算S(1.25)。includedefine Max_N 20main(){int i,k,n;double h[Max_N+1],b[Max_N+1],c[Max_N+1],d[Max_N+1],M[Max_N+1];double u[Max_N+1],v[Max_N+1],yy[Max_N+1],x[Max_N+1],y[Max_N+1];double xx,p,q,S;printf(\"\\nPlease input n value:\");输入插值点数n*/do{ scanf(\"%d\",&n);if(n>;Max_N)printf(\"\\nplease re-input n value:\");}while(n>;Max_N|n);printf(\"Input x[i],i=0,.%d:\\n\",n-1);for(i=0;i;i+)scanf(\"%lf\",&x[i]);printf(\"Input y[i],i=0,.%d:\\n\",n-1);for(i=0;i;i+)scanf(\"%lf\",&y[i]);printf(\"\\nInput the M0,Mn value:\");scanf(\"%lf%lf\",&M[0],&M[n]);printf(\"\\nInput the x value:\");输入计算三次样条插值函数的x值*/scanf(\"%lf\",&xx);if((xx>;x[n-1])|(xx[0])){printf(\"Please input a number between%f and%f.\\n\",x[0],x[n-1]);return;}计算M关系式中各参数的值*/h[0]=x[1]-x[0];for(i=1;i;i+){h[i]=x[i+1]-x[i];b[i]=h[i]/(h[i]+h[i-1]);c[i]=1-b[i];d[i]。
求:拉格朗日插值和三次样条插值的程序,要c语言 三次样条插值曲线c 代码,给你发消息了,这里链接有时候会被删的
三次样条插值用c语言具体怎么做 void SPL(int n,double*x,double*y,int ni,double*xi,double*yi);是你所要2113。已知 n 个点 x,y;x 必须已5261按顺序排好。要插值 ni 点,横坐标 xi[],输出4102 yi[]。程序里用double 型,1653保证计算精度。SPL调用现成的程序。现成的程序很多。端点处理方法不同,结果会有不同。想同matlab比较,你需 尝试 调用 spline()函数 时,令 end1 为 1,设 slope1 的值,令 end2 为 1 设 slope2 的值。