Код для программы №1 (упорядочивание списка фамилий по алфавиту). procedure TForm1.Button1Click(Sender: TObject);
var
n, i, j, k, s: integer;
spisok1, spisok2: array[1..50] of string;
fam, fam2: string;
begin
Memo2.Clear;
n:=Memo1.Lines.Count;
for i:=1 to n do
spisok1[i]:=Memo1.Lines[i-1];
for i:=1 to n do
begin
k:=1;
fam:=spisok1[1];
for j:=2 to n-i+1 do
begin
fam2:=spisok1[j];
if fam2[1]<fam[1] then begin fam:=fam2; k:=j; end;
if fam2[1]=fam[1] then if fam2[2]<fam[2] then begin fam:=fam2; k:=j; end;
if fam2[1]=fam[1] then if fam2[2]=fam[2] then if fam2[3]<fam[3] then begin fam:=fam2; k:=j; end;
end;
spisok2[i]:=spisok1[k];
for s:=k to n-1 do
spisok1[s]:=spisok1[s+1];
Memo2.Lines.Add(spisok2[i]);
end;
end;
Программу написал в Delphi, ТР нет под рукой. Ирина, просьба немного переработать самой. Вместо компонентов memo1,2 осуществи обычный ввод/вывод массива типа string. Все остальное без изменений.
Программу прикрепил, можно скачать и поиграть немного.
Программу №2 недавно объяснял пользователю Fanstar77. Напишите ему в личку, пусть он выложит.