Составьте плиз блок-схему по программе
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
RadioGroup1: TRadioGroup;
Button2: TButton;
Label3: TLabel;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
n:Integer;
m: array of integer;
implementation
{$R *.dfm}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if (not (key in ['0'..'9']))
or((Edit1.Text='')and(key='0')) then Key:=#0;
end;
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
randomize;
n:=StrToInt(Edit1.Text);
setlength(m,n);
Edit2.Text:='';
for i:=0 to n-1 do
Begin
m:=random(10);
Edit2.Text:=Edit2.Text+' '+IntToStr(m);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var i,j,k,d,x:integer;
begin
d:=1; i:=-1;
for k:=n-1 downto 0 do
begin
i:=i+d;
for j:=0 to k-1 do
begin
if ((RadioGroup1.ItemIndex=0) and ((m-m[i+d])*d<0))
or ((RadioGroup1.ItemIndex=1) and ((m-m[i+d])*d>0))
then
begin
x:=m;
m:=m[i+d];
m[i+d]:=x;
end;
i:=i+d;
end;
d:=-d;
Edit3.Clear;
for j:=0 to n-1 do
Edit3.Text:=Edit3.Text+' '+IntToStr(m[j]);
sleep(1000);
Application.ProcessMessages;
end;
Label3.Caption:='Сортировка закончена';
end;
end.