?? 朗格朗日.cpp
字號:
#include<iostream.h>
void main()
{
int n;
float m,js,x[20],y[20];
cout<<"********************************************************"<<endl;
cout<<"* 這是分段線性Lagrange插值多項式求線性函數(shù)值的近似值 *"<<endl;
cout<<"********************************************************"<<endl<<endl;
cout<<"請輸入插值節(jié)點個數(shù)n:";
cin>>n;
cout<<"請輸入已知插值節(jié)點信息:"<<endl;
for(int i=1;i<=n;i++)
{
cout<<"第"<<i<<"個插值節(jié)點 ";
cout<<"x["<<i<<"]=";
cin>>x[i];
cout<<"第"<<i<<"個插值節(jié)點函數(shù)值 ";
cout<<"y["<<i<<"]=";
cin>>y[i];
}
{
cout<<"請輸入插值點m:";
cin>>m;
if(m<=x[1])
js=y[1]*(m-x[2])/(x[1]-x[2])+y[2]*(m-x[1])/(x[2]-x[1]);
else if(m>=x[n])
js=y[n-1]*(m-x[n])/(x[n-1]-x[n])+y[n]*(m-x[n-1])/(x[n]-x[n-1]);
else
for(i=1;i<n;i++)
if((m-x[i])*(m-x[i+1])<0)
js=y[i]*(m-x[i+1])/(x[i]-x[i+1])+y[i+1]*(m-x[i])/(x[i+1]-x[i]);
cout<<"近似值為:"<<js<<endl;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -