?? 分段線性插值函數(shù).txt
字號:
int i,j,e;
float x,y,p_x,p_y,temp,xx[11],yy[11],mm[11],sum,p_sum;
Form1->Canvas->Pen->Color=clBlack;//軸色
Form1->Canvas->MoveTo(100,300);Form1->Canvas->LineTo(450,300);//橫軸
Form1->Canvas->MoveTo(300,50);Form1->Canvas->LineTo(300,400);//縱軸
Form1->Canvas->TextOut(x+150,-y+304,"-1");
Form1->Canvas->TextOut(x+290,-y+304,"0");
Form1->Canvas->TextOut(x+440,-y+304,"1");
Form1->Canvas->Pen->Color=clBlue;//線色
Form1->Canvas->MoveTo(x+20,-y+255);Form1->Canvas->LineTo(x+50,-y+255);//橫線
Form1->Canvas->TextOut(x+50,-y+250,"被逼近函數(shù)");//文字?jǐn)⑹? Form1->Canvas->Pen->Color=clRed;//線色
Form1->Canvas->MoveTo(x+20,-y+210);Form1->Canvas->LineTo(x+50,-y+210);
Form1->Canvas->TextOut(x+50,-y+200,"分段線性插值插值");
Form1->Canvas->Pen->Color=clBlue;//曲線顏色
x=-1.0,y=1/(1+25*x*x);
p_x=x*150+300,p_y=-y*150+300;
Form1->Canvas->MoveTo(p_x,p_y);
for (x=-1.0;x<=1.0;)
{
y=1/(1+25*x*x);
p_x=x*150+300,p_y=-y*150+300;
Form1->Canvas->LineTo(p_x,p_y);
x+=0.0001;
}
Form1->Canvas->Pen->Color=clRed;
x=-1.0;
for(i=0;i<=10;i++)
{
yy[i]=1/(1+25*x*x);
xx[i]=x;
x+=0.2;
}
x=-1.0,y=1/(1+25*x*x);
p_x=x*150+300,p_y=-y*150+300;
Form1->Canvas->MoveTo(p_x,p_y);
for(e=0;e<=1000;e++)
{
for(j=1;j<=10;j++)
{
if(xx[j-1]<x&&x<xx[j])
sum=yy[j-1]*((x-xx[j])/(xx[j-1]-xx[j]))+yy[j]*((x-xx[j-1])/(xx[j]-xx[j-1]));
}
p_x=x*150+300,p_y=-sum*150+300;
Form1->Canvas->LineTo(p_x,p_y);
x+=0.002;
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -