拉格朗日插值多项式
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
{
int i,j;
float *a,yy=0;
a=new float[n];
for(i=0;i<=n-1;i++)
{
a[i]=y[i];
for(j=0;j<=n-1;j++)
if(j!=i)a[i]*=(xx-x[j])/(x[i]-x[j]);
yy+=a[i];
}
delete a;
return yy;
}
void main()
{
float x[4]={0.56160,0.56280,0.56401,0.56521};
float y[4]={0.82741,0.82659,0.82577,0.82495};
float 来自百度文库x=0.5635,yy;
yy=Lagrange(x,y,xx,4);
printf("x=%f,y=%f\n",xx,yy);
拉格朗日插值多项式
程序与实例
已知函数表
Xi0.56160 0.56280 0.56401 0.56521
yi0.82741 0.82659 0.82577 0.82495
用三次拉格朗日插值多项式求x=0.5635时的函数近似值
C语言程序如下
#include<stdio.h>
float Lagrange(float x[],float y[],float xx,int n)
}
运行结果
int i,j;
float *a,yy=0;
a=new float[n];
for(i=0;i<=n-1;i++)
{
a[i]=y[i];
for(j=0;j<=n-1;j++)
if(j!=i)a[i]*=(xx-x[j])/(x[i]-x[j]);
yy+=a[i];
}
delete a;
return yy;
}
void main()
{
float x[4]={0.56160,0.56280,0.56401,0.56521};
float y[4]={0.82741,0.82659,0.82577,0.82495};
float 来自百度文库x=0.5635,yy;
yy=Lagrange(x,y,xx,4);
printf("x=%f,y=%f\n",xx,yy);
拉格朗日插值多项式
程序与实例
已知函数表
Xi0.56160 0.56280 0.56401 0.56521
yi0.82741 0.82659 0.82577 0.82495
用三次拉格朗日插值多项式求x=0.5635时的函数近似值
C语言程序如下
#include<stdio.h>
float Lagrange(float x[],float y[],float xx,int n)
}
运行结果