lagrange.cpp

来自「这是一个用C++实现数值分析的拉格朗日的程序.」· C++ 代码 · 共 30 行

CPP
30
字号
#include <iostream>
using namespace std;
double Lagrange(double *x,double *y,double xx,int n)
{
 int i,j;
 double *a,yy=0.0;
 a =new double[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()
{
 double x[4]={0.2,0.4,0.6,0.8};
 double y[4]={0.9798652,0.9177710,0.8080348,0.6386093};
 double xx,yy;
 cin>>xx;
 double Lagrange(double *,double *,double ,int);
 yy =Lagrange(x,y,xx,4);
 cout<<"x="<<xx<<'\t'<<"y="<<yy<<endl;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?