Цель: Разработать алгоритм и программу решения прикладной задачи – построение графика заданной функции. Научиться переводить декартовые координаты в экранные.
Задача : Построить график функции y = Ax2 + Bx + C в диапазоне ( x min , y min ) – ( x max , y max ). Постоянные А, В, С, x min , y min , x max , y max вводятся через пользовательский интерфейс.

var
Form1: TForm1;
a,b,c,N,Xmin,Ymin,Xmax,Ymax,i,xe1,ye1:integer;
dx,y,xe,ye,ky,kx,x:real;
implementation
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
begin
begin
a:=StrToInt(Edit6.Text);
b:=Strtoint(Edit7.Text);
c:=Strtoint(Edit8.Text);
Xmin:=Strtoint(Edit1.Text);
Ymin:=Strtoint(Edit2.Text);
Xmax:=Strtoint(Edit4.Text);
Ymax:=Strtoint(Edit3.Text);
N:=Strtoint(Edit5.Text);
dx:=(Xmax-Xmin)/N;
kx:=Width/(Xmax-Xmin);
ky:=Height/(Ymax-Ymin);
x:=Xmin;
while x<=xmax do begin y:=a*x*x+b*x+c; xe:=(x-Xmin)*kx; ye:=(y-Ymin)*ky; xe1:=Trunc(xe); ye1:=Trunc(ye); Image1.Canvas.Rectangle(0,0,Image1.Width,Image1.Height); Image1.Canvas.Ellipse(xe1,ye1,5,5); x:=x+dx; end; end;


Комментариев нет:
Отправить комментарий