📄 newton.cpp
字号:
#include<iostream.h>
void main()
{
int i,j,n;
float x[100],fx[100],c[100][100],y;
float xk,px,fz;
cout<<"输入数据个数:";
cin>>n;
for(i=0;i<n;i++)
{
cout<<"输入第"<<i<<"组"<<"("<<x(i)<<","<<y(i)<<"):";
cin>>x[i]>>fx[i];
}
cout<<"已知的数据是:"<<endl;
for(i=0;i<n;i++)
{
cout<<"("<<x[i]<<","<<fx[i]<<")"<<endl;
}
cout<<endl;
int flag=1;
while(flag!=0)
{
for(j=0;j<n;j++) //j表示列
{
if(j>0)
for(i=0;i<n-j;i++) //i表示行
c[i][j]=((c[i+1][j-1]-c[i][j-1])/(x[i+j]-x[i]));
else
for(i=0;i<n;i++)
c[i][0]=fx[i];
}
px=fx[0];
cout<<"输入所求f(x)的x值:";
cin>>xk;
for(i=1;i<n;i++)
{
fz=1;
for(j=0;j<=i-1;j++)
fz=fz*(xk-x[j]); //fz=(x-x0)(x-x1)(x-x2)...(x-x(j-1))
px=px+c[0][i]*fz;
}
cout<<"所求f(x)="<<px<<endl;
cout<<"继续请按1,退出请按0:";
cin>>flag;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -