
01.05.2011, 18:29
|
 |
Sir Richard Abramson
|
|
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
|
|
End лишний.
И учитесь уже код нормально оформлять. читать же невозможно!
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
Xmin, Xmax, h, y: real;
cx, cy: real;
begin
try
Xmin := StrToFloat(LabeledEdit1.Text);
Xmax := StrToFloat(LabeledEdit2.Text);
h := StrToFloat(LabeledEdit3.Text);
except
MessageDlg('неверные данные', mtError, [mbOK], 0);
exit
end;
if Xmax <= Xmin then
begin
MessageDlg('Xmin>Xmax!', mtError, [mbOK], 0);
exit
end;
Memo1.Lines.Clear;
with Image1.Canvas do
begin
Brush.Color := clBlue;
FillRect(Image1.ClientRect);
pen.Color := clWhite;
moveto(0, Image1.Height div 2);
lineto(Image1.Width, Image1.Height div 2);
cx := (Xmax - Xmin) / Image1.Width;
cy := 2 / Image1.Height;
if cy > cx then
cx := cy;
moveto(0, Image1.Height div 2);
While Xmin <= Xmax do
begin
y := sin(Xmin);
Memo1.Lines.Add('sin(' + FloatToStrF(Xmin, ffFixed, 10, 4) + ')=' +
FloatToStrF(y, ffFixed, 10, 4));
lineto(trunc(Xmin / cx), Image1.Height div 2 - trunc(Xmin / cx));
Xmin := Xmin + h;
end;
end;
end;
|