uses crt;
type
sportsman=record
FirstName:string[15];
Patronymic:string[20];
LastName:string[20];
Sex:Char;
Age:byte;
Weight:byte;
Height:byte;
end;
sportsmen=array[1..10] of sportsman;
var
i,j,N_m,N_f:byte;
sred:real;
male,female:sportsmen;
dummy:sportsman;
const
a:sportsmen=((FirstName:'Александр'; Patronymic:'Сергеевич'; LastName:'Ремнев'; sex:'М'; Age:22; Weight:68; Height:173),
(FirstName:'Сергей'; Patronymic:'Петрович'; LastName:'Жовтяк'; sex:'М'; Age:23; Weight:65; Height:170),
(FirstName:'Людмила'; Patronymic:'Петровна'; LastName:'Иванова'; sex:'Ж'; Age:25; Weight:58; Height:162),
(FirstName:'Любовь'; Patronymic:'Александровна'; LastName:'Французенко'; sex:'Ж'; Age:20; Weight:58; Height:165),
(FirstName:'Тимофей'; Patronymic:'Дмитриевич'; LastName:'Стибло'; sex:'М'; Age:19; Weight:61; Height:167),
(FirstName:'Ольга'; Patronymic:'Владимировна'; LastName:'Егина'; sex:'Ж'; Age:27; Weight:56; Height:164),
(FirstName:'Виктория'; Patronymic:'Павловна'; LastName:'Дергачева'; sex:'Ж'; Age:26; Weight:57; Height:169),
(FirstName:'Валерий'; Patronymic:'Иванович'; LastName:'Чижков'; sex:'М'; Age:21; Weight:71; Height:183),
(FirstName:'Геннадий'; Patronymic:'Викторович'; LastName:'Петров'; sex:'М'; Age:28; Weight:75; Height:185),
(FirstName:'Мария'; Patronymic:'Витальевна'; LastName:'Смирнова'; sex:'Ж'; Age:21; Weight:53; Height:163));
begin
clrscr;
writeln('Полный список спортсменов:');
writeln('Имя':15, 'Отчество':20, 'Фамилия':20, 'Пол':4, 'Возраст':8, 'Вес':4, 'Рост':5,#10);
for i:=1 to 10 do
with a[i] do
writeln(FirstName:15,Patronymic:20,LastName:20,' ',sex,Age:8,Weight:4,Height:5);
writeln;
writeln('Для продолжения нажмите "Enter"...');
readln;
writeln('Список тяжелых молодых спортсменов:');
writeln('Имя':15, 'Отчество':20, 'Фамилия':20, 'Пол':4, 'Возраст':8, 'Вес':4, 'Рост':5,#10);
for i:=1 to 10 do
with a[i] do
if (Age<25) and (Weight>70) then
writeln(FirstName:15,Patronymic:20,LastName:20,' ',sex,Age:8,Weight:4,Height:5);
writeln;
writeln('Для продолжения нажмите "Enter"...');
readln;
N_m:=0;
N_f:=0;
for i:=1 to 10 do
with a[i] do
begin
if sex='М' then
begin
inc(N_m);
male[N_m]:=a[i];
end
else
begin
inc(N_f);
female[N_f]:=a[i];
end;
end;
for i:=1 to N_m do
for j:=1 to N_m-i do
if ORD(male[j].LastName[1])>ORD(male[j+1].LastName[1]) then
begin
dummy:=male[j];
male[j]:=male[j+1];
male[j+1]:=dummy;
end;
writeln('Список мужчин по алфавиту:');
writeln('Имя':15, 'Отчество':20, 'Фамилия':20, 'Пол':4, 'Возраст':8, 'Вес':4, 'Рост':5,#10);
for i:=1 to N_m do
with male[i] do
writeln(FirstName:15,Patronymic:20,LastName:20,' ',sex,Age:8,Weight:4,Height:5);
writeln;
for i:=1 to N_f do
for j:=1 to N_f-i do
if ORD(female[j].LastName[1])>ORD(female[j+1].LastName[1]) then
begin
dummy:=female[j];
female[j]:=female[j+1];
female[j+1]:=dummy;
end;
writeln('Список женщин по алфавиту:');
writeln('Имя':15, 'Отчество':20, 'Фамилия':20, 'Пол':4, 'Возраст':8, 'Вес':4, 'Рост':5,#10);
for i:=1 to N_m do
with female[i] do
writeln(FirstName:15,Patronymic:20,LastName:20,' ',sex,Age:8,Weight:4,Height:5);
writeln;
writeln('Для продолжения нажмите "Enter"...');
readln;
writeln;
sred:=0;
for i:=1 to 10 do
with a[i] do
sred:=sred+0.1*Age;
writeln('Средний возраст спортсменов - ',Round(sred));
readln
end.