一、实验目的
1、通过对拉格朗日插值和牛顿插值作编程练习和上机运算,进一步体会它们的不同特点;
2、比较二者的计算速度。
二、实验内容
1、拉格朗日插值
按下列数据
作拉格朗日插值,并求x1=2,x2=0,x3=2.75时的函数近似值。
2、牛顿插值
按下列数据
作牛顿插值,并求x1=0.46,x2=0.55,x3=0.60时的函数近似值。
三、算法描述
1、拉格朗日插值
2、牛顿插值
四、源程序
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
double Lagrange(double a)
{
double x[5] = {
-3.0,-1.0,1.0,2.0,3.0 };
double y[5] = {
1.0,1.5,2.0,2.0,1.0 };
double l[5], lup[5] = {
1,1,1,1,1 }, llow[5] = {
1,1,1,1,1 };
double L = 0;
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < 5; j++)
{
if (j != i)
{
lup[i] *= (a - x[j]);
llow[i] *= (x[i] - x[j]);
}
}
l[i]