DELPHI.Программа компилируется.но ничего не происходит с формой - PullRequest
0 голосов
/ 21 сентября 2018

Компиляция запущена, все ок.Но с формой ничего не происходит.
Форма запускается, но к ней автоматически не добавляются данные.Если вы вводите данные вручную, то при нажатии кнопки ничего не происходит либо

Необходимо отобразить таблицу значений функции Y (x) и ее разложений в серии S (x) для x, изменяющегося от x0 до xk с шагом h = (x0-xk) / 10. Близость значений S (x) и Y (x) во всем диапазоне значений x указывает на правильностьвычисления S (x) и Y (x).

unit Unit1;

interface

uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,ExtCtrls ;

type
TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure Form1Create(Sender:TObject);
    procedure Button1Click(Sender:TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation
{$R *.dfm}

procedure TForm1.Form1Create(Sender: TObject);
begin
  Edit1.Text := '0';
  Edit2.Text := '2';
  Edit3.Text := '5';
  Edit4.Text := '0.25';
  Memo1.Clear;
  Memo1.Lines.Add('Lab3, Kosyakova Dasha, 10702217');
  Button1Click(Sender);
end;

procedure TForm1.Button1Click(Sender:TObject);
var
  x1, x2, x, h, a, s  : extended;
  N, k, c             : integer;
begin
   x1 := StrToFloat(Edit1.Text);
   Memo1.Lines.Add('x1 = ' + Edit1.Text);
   x2 := StrToFloat(Edit2.Text);
   Memo1.Lines.Add('x2 = ' + Edit2.Text);
   N := StrToInt(Edit3.Text);
   Memo1.Lines.Add('N = ' + Edit3.Text);
   h :=StrToFloat(Edit4.Text);
   Memo1.Lines.Add('h = ' + Edit4.Text);
   C :=-1;
   X := x1;
   Repeat
     A := 1;
     S := 1;
     for k :=1 to N do
     begin
        a := c*a*x/k;
        s := s + a;
     end;
     Memo1.Lines.Add(
       'npи x = ' + FloatToStrF(x, ffFixed, 6, 2) + ' сумма = ' +
       FloatToStrF(s, ffFixed, 6,2));
     x := x+h;
   until x>x2;
end;

end.

1 Ответ

0 голосов
/ 21 сентября 2018

Единственное объяснение того, что вы сообщаете, заключается в том, что вы не смогли подключить события к их обработчикам.

  • Нажмите на поверхность конструктора формы.
  • Переключитесь на Инспектор объектов .
  • Выберите страницу События .
  • Найдите событие OnCreate и установите его значение Form1Create.

Возможно, вам придется сделать то же самое для кнопки, чтобы связать ее событие OnClick с обработчиком.

...