資源描述:
《拉格朗日插值算法C語言程序.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、#includefloatlagrange(float*x,float*y,floatxx,intn)//拉格朗日插值算法//指向浮點型的指針變量x,y{inti,j;float*a,yy=0.0;//a作為臨時變量,記錄拉格朗日插值多項式a=(float*)malloc(n*sizeof(float));for(i=0;i<=n-1;i++){a[i]=y[i];for(j=0;j<=n-1;j++)if(j!=i)a[i]=a[i]*((xx-x[j])/(x[i]-x[j]));yy=yy+a[i];}free(a);returnyy;}main(){inti,n;f
2、loatx[20],y[20],xx,yy;printf("請輸入插值點個數(shù)n:");scanf("%d",&n);if(n>=20){printf("Error!");}if(n<=0){printf("Error!");}printf("請輸入插值點");for(i=0;i<=n-1;i++){printf("x[%d]:",i);scanf("%f",&x[i]);}printf("請輸入對應(yīng)函數(shù)值");for(i=0;i<=n-1;i++){printf("y[%d]:",i);scanf("%f",&y[i]);}printf("請輸入插值點xx:");scan
3、f("%f",&xx);yy=lagrange(x,y,xx,n);printf("");printf("x=%f,L(x)=%f",xx,yy);}