Учебный курс Программирование на Delphi. Модуль 10
Материал из Wiki Mininuniver
Перейти к навигацииПерейти к поискуСодержание
Пример 1
- Условие
Массив A(n) отсортировать в порядке возрастания элементов.
- Использованные компоненты
- Программный код
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, XPMan, Grids, StdCtrls, Buttons;
type
x=array [1..20] of real;
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
StringGrid1: TStringGrid;
Label2: TLabel;
Button2: TButton;
StringGrid2: TStringGrid;
Label3: TLabel;
XPManifest1: TXPManifest;
BitBtn1: TBitBtn;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
private
{Private declarations }
public
{Private declarations }
end;
var
Form1: TForm1;
a:x; i, j, n, k: integer; R: real;
implementation
{$R *.dfm}
procedure max (q: integer; var nmax: integer);
var m: real; l: integer;
begin
m:=A[1]; nmax:=1;
for l:=1 to q do
if A[l]>m then
begin
m:= A[l]; nmax:= l
end;
end; {конец описания процедуры}
procedure TForm1.Button2Click(Sender: TObject);
begin
randomize;
n:=strtoint(edit1.Text);
j:=n;
for i:=1 to n do begin
a[i]:=random(11);
stringgrid1.Cells[i-1,0]:=floattostr(a[i]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin {основная программа}
while j <> 1 do
begin
max (j, k);
R:= A[k]; A[k]:= A[j]; A[j]:= R;
j:= j-1;
end;
for i:=1 to n do
stringgrid2.Cells[i-1,0]:=floattostr(a[i]);
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
close;
end;
end.
- Форма с результатом работы программы