Женьке

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
const N=15;
type
stdnt = record
surname: string[15];
gr: word;
lrn: record
den: 1..31;
mes: 1..12;
god: word;
end;
grup: string[7];
kurs: byte;
ocenki: array [1..5, 1..6] of 2..5;
end;
var
stud: array [1..N] of stdnt;
tmp: stdnt; p: boolean;
i, j, z: byte;
BEGIN
for i:=1 to N do
with stud[i] do
begin
write(' Фамилия: '); readln(surname);
write('Год рождения: '); readln(gr);
write(' Поступление: ');
with lrn do readln(den, mes, god);
write(' Группа: '); readln(grup);
write(' Курс: '); readln(kurs);
for j:=1 to kurs do
begin
write(' ', j, ' курс: ');
for z:=1 to 6 do
read(ocenki[j, z]);
end;
readln;
end;
repeat
p:=false;
for i:=1 to N-1 do
if (stud[i].ocenki[1, 1]>stud[i+1].ocenki[1, 1]) then
begin
tmp:=stud[i]; stud[i]:=stud[i+1];
stud[i+1]:=tmp; p:=true;
end;
until not(p);
writeln('Фамилия':10, ' Г.Р.':6, ' ', 'Поступление':11, ' Группа', ' Курс');
for i:=1 to N do
with stud[i] do
writeln(surname:6, gr:6, ' ', lrn.den, '.', lrn.mes, '.', lrn.god, ' ', grup:5, ' ', kurs:3);
END.