unit UMatice1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls, Spin;
type
TfrmaMatice1 = class(TForm)
lblM: TLabel;
lblN: TLabel;
sedM: TSpinEdit;
sedN: TSpinEdit;
btnRozmery: TButton;
lblA: TLabel;
stgA: TStringGrid;
btnA: TButton;
btnVymena: TButton;
stgVA: TStringGrid;
lblVA: TLabel;
btnTisk_matice: TButton;
procedure btnRozmeryClick(Sender: TObject);
procedure btnAClick(Sender: TObject);
procedure btnTisk_maticeClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
tmatice=array[1..50,1..50] of Real;
var
frmaMatice1: TfrmaMatice1;
m,n:Integer;
a:tmatice;
implementation
{$R *.dfm}
procedure TfrmaMatice1.btnRozmeryClick(Sender: TObject);
var i,j:integer; m,n:Integer; a:tmatice;
begin
m:=sedM.Value;
n:=sedN.value;
btnRozmery.Enabled:=false; btnA.Enabled:=true;
lblA.Visible:=true; stgA.Visible:=true; btnA.Visible:=true;
stgA.RowCount:=m; stgA.ColCount:=n;
stgA.Height:=m*stgA.DefaultRowHeight+m +3;
stgA.Width:=n*stgA.DefaultColWidth+n+3;
end;
procedure TfrmaMatice1.btnAClick(Sender: TObject);
Var i,j:Integer; m,n:Integer; a:tmatice;
begin
m:=sedM.Value;
n:=sedN.value;
randomize;
for i:=1 to m do
for j:=1 To n do
begin
a[i,j]:=Random(49);
stgA.Cells[i-1,j-1]:=FloatToStr(a[i,j]);
end;
btnRozmery.Enabled:=true;; btnA.Enabled:=false;
btnVymena.Visible:=true;
btnTisk_matice.Visible:=true;
btnA.Enabled:=false;
stgVA.RowCount:=m; stgVA.ColCount:=n;
stgVA.Height:=m*stgVA.DefaultRowHeight+m +3;
stgVA.Width:=n*stgVA.DefaultColWidth+n+3;
for i:=1 to m do
for j:=1 to n do
stgVA.Cells[i-1,j-1]:=FloatToStr(a[i,j]);
end;
procedure TfrmaMatice1.btnTisk_maticeClick(Sender: TObject);
var i,j:integer;
begin
lblVA.Visible:=true;
stgVA.Visible:=true;
begin
for i:=1 to m do
for j:=1 to n do
stgVA.Cells[i+2,j+2]:=FloatToStr(a[i,j]);
end;
end;
procedure TfrmaMatice1.FormCreate(Sender: TObject);
begin
end;
end.
|