program
Prepodavatel;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
kol_prepod=
2
;
type
Tgruppa=
1..7
;
Tgruppy_kursa=
array
[Tgruppa]
of
boolean
;
Tgruppy_fak=
array
[
1..5
]
of
Tgruppy_kursa;
Tprepod=
record
fio:
string
;
spec:(matematika,mehanika);
spisok_grupp:Tgruppy_fak
end
;
Tvse_prepod=
array
[
1..
kol_prepod]
of
Tprepod;
var
prepod:Tvse_prepod;
i:
byte
;
nomer,danet:
0..1
;
gruppa:Tgruppa;
kurs:
1..5
;
t,b:
boolean
;
function
proverka(n:
integer
):
boolean
;
var
sk:
byte
;
gr:Tgruppa;
k:
1..5
;
begin
sk:=
0
;
for
gr:=
1
to
7
do
for
k:=
1
to
5
do
if
prepod[n].spisok_grupp[gr,k]=
true
then
sk:=sk+
1
;
if
sk=
1
then
result:=
true
else
result:=
false
end
;
begin
for
i:=
1
to
kol_prepod
do
begin
writeln
(
'vveite informaciyu o '
,i,
' prepodavatele:'
);
write
(
'FIO: '
);
readln(prepod[i].fio);
write
(
'nomer specialnosti (matematica-0, mehanika-1): '
);
readln(nomer);
if
nomer=
0
then
prepod[i].spec:=matematika
else
prepod[i].spec:=mehanika;
for
gruppa:=
1
to
7
do
for
kurs:=
1
to
5
do
prepod[i].spisok_grupp[gruppa,kurs]:=
false
;
b:=
true
;
while
b<>
false
do
begin
write
(
'vvedite gruppu: '
);
readln(gruppa);
write
(
'vvedite kurs: '
);
readln(kurs);
prepod[i].spisok_grupp[gruppa,kurs]:=
true
;
write
(
'dobavit eshe gruppu? da-vvedite 1, net-0: '
);
readln(danet);
if
danet=
1
then
b:=
true
else
b:=
false
end
;
writeln
end
;
t:=
false
;
for
i:=
1
to
kol_prepod
do
if
proverka(i)=
true
then
begin
writeln
(prepod[i].fio);
t:=
true
end
;
readln;
if
t=
false
then
writeln
(
'takih prepodavateley net'
);
readln
end
.