⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 牛顿插值法的c ++语言程序.txt

📁 用牛顿差值法求多项式的均差
💻 TXT
字号:
牛顿插值法的C++语言程序:
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
void main(){
//将插值节点存放在u[6]数组中
double u[6]={0.40,0.55,0.65,0.80,0.90,1.05}; 
//将节点处对应的函数值存放在v[6]数组中
   double v[6]={0.41075,0.57815,0.69675,0.88811,1.02652,1.25382};
double b=v[0];     
double w=1;
double r=1.0e-9;                     //误差r
int i,k;
	double a[6][6];
	for(i=0;i<6;i++)
		a[i][0]=v[i];
	for(k=1;k<6;k++){                           /*计算各阶均差*/
		for(i=k;i<6;i++)
			a[i][k]=(a[i][k-1]-a[i-1][k-1])/(u[i]-u[i-k]);
		if(fabs(a[k+1][k]-a[k][k]<r)) break;   //如果小于误差则跳出
       w=w*(0.596-u[k-1]);
		b=b+a[k][k]*w;
	} 
	for(i=0;i<6;i++)                           //输出牛顿插值表
		for(k=0;k<=i;k++)
		{   cout<<setw(10)<<a[i][k]<<" ";
		    if(k==i)
				cout<<endl;} 
//输出计算点的函数值
	cout<<"函数在计算点0.596处的函数值f(0.596)="<<b<<endl;           
    cout<<fabs(a[5][5]*w)<<endl;   //截断误差的输出                                  
}

⌨️ 快捷键说明

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