Помогите объяснить код в Delphi:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Label4: TLabel;
Edit2: TEdit;
Label5: TLabel;
Edit3: TEdit;
Memo1: TMemo;
Button1: TButton;
Button2: TButton;
BitBtn1: TBitBtn;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i:byte;
a,b,h,x,y:real;
st:string[20];
implementation
{$R *.dfm}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
st:=(sender as tedit).text;
if not (key in['0'..'9',',',#08,'-']) then key:=chr(0);
if (key=',') and (pos(',',st)<>0) then key:=chr(0);
end;
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
st:=(sender as tedit).text;
if not (key in['0'..'9',',',#08,'-']) then key:=chr(0);
if (key=',') and (pos(',',st)<>0) then key:=chr(0);
end;
procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
st:=(sender as tedit).text;
if not (key in['0'..'9',',',#08,'-']) then key:=chr(0);
if (key=',') and (pos(',',st)<>0) then key:=chr(0);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
i:=0;
a:=strtofloat(edit1.Text);
b:=strtofloat(edit2.Text);
h:=strtofloat(edit3.Text);
x:=a;
while (x<=b-h) or (x>=b+h) do
begin
y:=sqr(sqr(x))+6*sqr(x)*x+sqr(x)-4*x-60;
memo1.Lines.Add(formatfloat('y=####.##',y)+inttostr(i));
x:=x+h;
inc(i);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
memo1.Lines.Clear;
end;
end.