unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    StringGrid1: TStringGrid;
    Label1: TLabel;
    Edit1: TEdit;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var tab1: array of double;
    i,n:integer;
begin


  n:=StrToIntDef(Edit1.Text, 1); //funkcja zabezpiecza przed błędem
  if n<0 then n:=1;
  StringGrid1.ColCount:=n;       //n to liczba kolumn tabeli
  SetLength(tab1,n);             //i długość tablicy


  for i:=0 to n-1 do
  begin
    tab1[i]:=Random(10);
    StringGrid1.Cells[i,0]:=FloatToStr(tab1[i]); //to przypisanie umożliwia
                                                 //wykorzystanie funkcji mean
  end;
  Label1.Caption:='średnia='+FloattoStrF(mean(tab1),ffFixed,7,2);

end;

end.
