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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
| Program Lab13;
const
n=3;
type
worker=record
names:string;
job:string;
year:word;
end;
massive=array [1..n] of worker;
var
i,j,s,a,b,d:byte;
table:massive;
x:worker;
begin
writeln('Введите 1.Фамилия и инициалы работника 2.Название занимаемой должности 3.Год поступления на работу');
for i:=1 to n do
begin
writeln('работник №',i,': ');
with table do
begin
write('1.');
readln(names);
write('2.');
readln(job);
write('3.');
readln(year);
writeln;
end;
end;
writeln('----T------------------T--------------------T------¬');
writeln('¦ № ¦ Фамилия И.О. ¦ название должности ¦ год ¦');
for i:=1 to n do
begin
writeln('+---+------------------+--------------------+------+');
with table do
begin
writeln('¦',i:3,'¦',names:18,'¦',job:20,'¦ ',year:5,'¦');
end;
end;
writeln('L---+------------------+--------------------+-------');
readln;
for i := 1 to n - 1 do
for j := 1 to n - i do
if copy(table[j].names,1,1)>copy(table[j+1].names,1,1) then
begin
x:=table[j];
table[j]:=table[j+1];
table[j+1]:=x;
end;
writeln('Отсортированная по алфавиту таблица:');
writeln('----T------------------T--------------------T------¬');
writeln('¦ № ¦ Фамилия И.О. ¦ название должности ¦ год ¦');
for i:=1 to n do
begin
writeln('+---+------------------+--------------------+------+');
with table do
begin
writeln('¦',i:3,'¦',names:18,'¦',job:20,'¦ ',year:5,'¦');
end;
end;
writeln('L---+------------------+--------------------+-------');
readln;
write('Введите стаж работника: ');
read(s);
a:=1;
b:=0;
d:=0;
for i:=1 to n do
if (2011-table.year)>s
then
begin
if d=0 then writeln('Работники,имеющие стаж выше введенного:');
inc(d);
writeln(a,'.',table.names);
inc(a);
end
else inc(b);
if b=n then writeln('Работников,имеющих стаж выше введенного,не имеется');
readln;
readln;
end. |