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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
| uses crt;
const nmax=20;
line='--------------------------------------------';
shap='| ÔÈÎ | Âûðàáîòêà,% | Ïðîãóëîâ |';
type sotrudniki = record
fio: string[15];
vyr: real;
kol: byte;
end;
var f:file of sotrudniki;
r: byte;
procedure Vvod (var ff: file of sotrudniki);
var s: sotrudniki;
i,n: byte;
begin
clrscr;
write('Êîëè÷åñòâî ñîòðóäíèêîâ, íå áîëåå ',nmax,' n=');
readln(n);
rewrite(ff);
writeln('Âíåñèòå äàííûå î ñîòðóäíèêàõ: ');
for i:=1 to n do
begin
writeln(,i,' ñîòðóäíèê: ');
with s do
begin
write('Ôàìèëèÿ, èíèöèàëû: '); readln(fio);
write('Âûðàáîòêà, %: '); readln(vyr);
write('Ïðîãóëîâ: '); readln(kol);
end;
write(ff,s);
end;
close(ff);
writeln('Äàííûå âíåñåíû');
writeln('Äëÿ ïðîäîëæåíèÿ íàæìèòå Enter');
readln;
end;
procedure Vyvod (ff: file of sotrudniki);
var s: sotrudniki;
k: byte;
begin
clrscr; k:=0;
reset(ff);
writeln(line);
writeln(shap);
writeln(line);
while not (eof(ff)) do
begin
inc(k);
read(ff,s);
with s do
begin
writeln('|',fio:15,'|':3,vyr:8:1,'|':6,kol:6,'|':5);
writeln(line);
end;
end;
close(ff);
writeln(line);
writeln('Âñåãî ',k);
writeln('');
writeln('Äëÿ ïðîäîëæåíèÿ íàæìèòå Enter');
readln;
end;
procedure VyvodPro (ff: file of sotrudniki);
var s: sotrudniki;
k: byte;
begin
clrscr; k:=0;
reset(ff);
while not (eof(ff)) do
begin
read(ff,s);
with s do
if kol>0 then
begin
inc(k);
if k=1 then
begin
writeln(line);
writeln(shap);
writeln(line);
end;
writeln('|',fio:15,'|':3,vyr:8:1,'|':6,kol:6,'|':5);
writeln(line);
end;
end;
close(ff);
writeln(line);
writeln('Âñåãî ',k);
writeln('');
writeln('Äëÿ ïðîäîëæåíèÿ íàæìèòå Enter');
readln;
end;
procedure VyvodNe (ff: file of sotrudniki);
var s: sotrudniki;
k: byte;
begin
clrscr; k:=0;
reset(ff);
while not (eof(ff)) do
begin
read(ff,s);
with s do
if vyr<100 then
begin
inc(k);
if k=1 then
begin
writeln(line);
writeln(shap);
writeln(line);
end;
writeln('|',fio:15,'|':3,vyr:8:1,'|':6,kol:6,'|':5);
writeln(line);
end;
end;
close(ff);
writeln(line);
writeln('Âñåãî ',k);
writeln('');
writeln('Äëÿ ïðîäîëæåíèÿ íàæìèòå Enter');
readln;
end;
begin
assign(f,'C:\BDsotrudniki.dta');
r:=1;
repeat
clrscr;
writeln('0-çàâåðøåíèå ðàáîòû');
writeln('1-ââîä äàííûõ');
writeln('2-âûâîä ñïèñêà ñîòðóäíèêîâ');
writeln('3-âûâîä äàííûõ î ïðîãóëüùèêàõ');
writeln('4-âûâîä äàííûõ î ðàáîòíèêàõ, íå âûïîëíèâøèõ ïëàí');
readln(r);
case r of
1: Vvod (f);
2: Vyvod (f);
3: VyvodPro (f);
4: VyvodNe (f);
else r:=0;
end;
until r=0;
readln;
end. |