拉格朗日插值法用C语言表示

[复制链接]
查看11 | 回复0 | 2010-5-21 15:47:40 | 显示全部楼层 |阅读模式
#includedouble L(int s){ double x[13]={0.0,10.0,20.0,30.0,40.0,50.0,60.0,70.0,80.0,90.0,100.0,110.0,120.0}; double y[13]={5.0,1.0,7.5,3.0,4.5,8.8,15.5,6.5,-5.0,-10.0,-2.0,4.5,7.0}; int i=0; int j=0; int k=0; double l[13]={1,1,1,1,1,1,1,1,1,1,1,1,1}; double result=0.0;for(k=0;k<13;k++) {for(i=0;i<13;i++){ if(k!=i) l[k]*=((s-x)/(x[k]-x));} } for(j=0;j<13;j++)result+=(l[j]*y[j]); return result;}void main(){ printf("%lf\n",L(65));}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行