📄 niudun.cpp
字号:
//author Duanjing
#include<iostream.h>
void main()
{
int n,i,j;
float X[15];
float D[15];
float t,L;
char a;
cout<<"输入插值多项式的次数n=";
cin>>n;
cout<<"输入节点Xi以及f(Xi):"<<endl;
cout<<"节点个数在15个以内"<<endl;
for(i=0;i<=n;i++)
{ cout<<"X["<<i<<"]=";
cin>>X[i];
cout<<"f[X"<<i<<"]=";
cin>>D[i];
}
i=1;
//计算均差
for(;i<=n;i++)
{
if(i!=j)
{
for(j=n;j>=i;j--)
{D[j]=(D[j]-D[j-1])/(X[j]-X[j-i]);}
}
else {continue;}
}
//计算插值
do{
cout<<"输入插值点t:"<<endl;
cin>>t;
float p;
p=D[n];
L=1;
for(i=n-1;i>=0;i--)
{
p=D[i]+(t-X[i])*p;}
cout<<"(t,p)="<<"("<<t<<","<<p<<")"<<endl;
cout<<"继续计算吗? 按y继续,按其他任意键结束插值 ";
cin>>a;}while(a=='y');
cout<<"牛顿插值结束!"<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -