Zase jeden z tych, co prosim nepoznaju???
Dufam ze som to pochopil spravne a nemusis ten subor ukladat aj na disk.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Memo1: TMemo;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i,j,k,l,m:integer;
implementation
{$R *.dfm}
type TStudent = record
meno, priezvisko: string[30];
vykon: real;
end;
var skok:array[1..100] of TStudent;
procedure TForm1.Button1Click(Sender: TObject);
begin
inc(i);
if (edit1.text<>'') and (edit2.text<>'') and (edit3.text<>'')
then
with skok[i] do
begin
meno:=Edit1.Text;
priezvisko:=Edit2.Text;
vykon:=strtofloat(Edit3.Text);
end
else messagebox(0,'Chybny udaj v niektorom policku','error',0);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
for k:=1 to i-1 do
begin
m:=k;
for j:=k+1 to i do
if skok[m].meno>skok[j].meno then m:=j;
if m<>k then begin
skok[100]:=skok[m];
skok[m]:=skok[k];
skok[k]:=skok[100];
end;
end;
memo1.Clear;
for j:=1 to i do
memo1.lines.add(skok[j].meno+' '+skok[j].priezvisko+' '+floattostr(skok[j].vykon));
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
for k:=1 to i-1 do
begin
m:=k;
for j:=k+1 to i do
if skok[m].vykon<skok[j].vykon then m:=j;
if m<>k then begin
skok[100]:=skok[m];
skok[m]:=skok[k];
skok[k]:=skok[100];
end;
end;
memo1.Clear;
for j:=1 to i do
memo1.lines.add(skok[j].meno+' '+skok[j].priezvisko+' '+floattostr(skok[j].vykon));
end;
end.
|