- •1)Тема: « Работа с числом. Формирование нового числа».
- •2) Тема: « Работа с компонентами – списки tListBox и tComboBox при обработке линейных массивов »
- •3) Тема: «Работа со списками на форме. Сортировка массива».
- •4)Тема: « Работа с таблицами. Компонент tStringGrid»
- •5)Тема: « Работа с несколькими формами»
- •6)Тема: « Работа с несколькими таблицами.
- •7)Тема: Оpганизация последовательного файла.
- •8) Тема: « Разработка диаграмм».
- •10)Тема: « Разработка проектов »
3) Тема: «Работа со списками на форме. Сортировка массива».
Известны фамилии сотрудников (ListBox1), образование (ListBox2), стаж работы (ListBox3).Выполнить следующие виды работ:
Дописать новых сотрудников;
Отсортировать сотрудников по фамилии;
Дописать новых сотрудников, сохранив упорядоченность;
Отсортировать сотрудников по стажу работы;
Дописать новых сотрудников, сохранив упорядоченность по стажу работы;
Выбрать сотрудников по стажу работы.
unit Unit3;
procedure Button3Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button10Click(Sender: TObject);
procedure Button11Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure Button9Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
LB1.Clear;
LB2.Clear;
LB3.Clear;
end;
procedure TForm1.Button1Click(Sender: TObject);
var n,i:Byte;
begin
n:=StrToInt(E1.text);
for i:=0 to n-1 do begin
lb1.items.add(inputbox('Ввод','Введите'+inttostr(i+1)+' Фамилию сотрудника',' '));
LB3.items.add(inputbox('Ввод','Введите'+inttostr(i+1)+' Стаж работы',' '));
end;
end;
procedure TForm1.Button4Click(Sender: TObject);
var i:Byte;
begin
LB1.items.add(inputbox('Ввод','Введите фамилию',' '));
LB3.items.add(inputbox('Ввод','Введите должность',' '));
end;
procedure TForm1.Button10Click(Sender: TObject);
var i:byte; f:textfile; k:string;
begin
if SaveDialog1.Execute=true then begin
k:=SaveDialog1.FileName;
assignfile(f,k);
rewrite(f);
writeln(f,LB1.items.count);
for i:=0 to LB1.Items.Count-1 do
writeln(f,LB1.items[i]);
for i:=0 to LB1.Items.Count-1 do
writeln(f,LB3.items[i]);
end;
closefile(f);
showmessage('Данные записаны');
end;
procedure TForm1.Button11Click(Sender: TObject);
var i,k1:byte; f:textfile; k,buf:string;
begin
if opendialog1.Execute=true then begin
k:=opendialog1.FileName;
assignfile(f,k);
reset(f);
readln(f,k1);
for i:=k1+1 to 2*k1 do begin
readln(f,buf);
LB1.Items.Add(buf);
end;
for i:=2*k1+1 to 3*k1 do begin
readln(f,buf);
LB3.Items.Add(buf);
end;
closefile(f);
showmessage('Данные загруженны');
end;
end;
procedure TForm1.Button5Click(Sender: TObject);
var a:array[1..100] of integer; i,n,j:byte; r:string;
begin
n:=strtoint(E1.text);
for i:=0 to LB1.Items.Count-2 do
for j:=i+1 to LB1.Items.Count-1 do
if LB1.Items[i]>LB1.Items[j] then begin
r:=LB1.Items[i];
LB1.Items[i]:=LB1.Items[j];
LB1.Items[j]:=(r);
r:=LB3.Items[i];
LB3.Items[i]:=LB3.Items[j];
LB3.Items[j]:=(r);
end;
end;
procedure TForm1.Button6Click(Sender: TObject);
var a:array[1..100] of integer; i,n,j:byte; r:string;
begin
LB1.items.add(inputbox('Ввод','Введите фамилию',' '));
LB3.items.add(inputbox('Ввод','Введите стаж работы',' '));
for i:=0 to LB1.Items.Count-2 do
for j:=i+1 to LB1.Items.Count-1 do
if LB1.Items[i]>LB1.Items[j] then begin
r:=LB1.Items[i];
LB1.Items[i]:=LB1.Items[j];
LB1.Items[j]:=(r);
r:=LB3.Items[i];
LB3.Items[i]:=LB3.Items[j];
LB3.Items[j]:=(r);
end;
end;
procedure TForm1.Button7Click(Sender: TObject);
var a:array[1..100] of integer; i,n,j:byte; r:string;
begin
n:=strtoint(E1.text);
for i:=0 to LB1.Items.Count-2 do
for j:=i+1 to LB1.Items.Count-1 do
if LB3.Items[i]>LB3.Items[j] then begin
r:=LB3.Items[i];
LB3.Items[i]:=LB3.Items[j];
LB3.Items[j]:=(r);
r:=LB1.Items[i];
LB1.Items[i]:=LB1.Items[j];
LB1.Items[j]:=(r);
end;
end;
procedure TForm1.Button9Click(Sender: TObject);
var i,n:Byte; f:string;
begin
n:=strtoint(E1.text);
f:=E2.text;
for i:=0 to LB1.Items.Count-1 do begin
if LB3.Items[i]=f then
LB2.Items.Add(LB1.Items[i]);
end;
end;
end.