Var n_name, n_oc:string;
Begin{Procedure}
Repeat
ClearDevice;
n_menu:=12;
Ramka;
f_name:='test_men.pas';
Assign(f,f_name);
Chtenie;
Kursor;
x:=p_kur;
If n_menu=13
Then
Begin{Then}
ClearDevice;
Ramka;
Rectangle(40,150,600,180);
SetColor(Red);
OutTextXY(120,100,'Введите номер группы');
SetColor(White);
GoToXY(10,11);
Readln(grup);
ClearDevice;
Ramka;
SetColor(White);
OutTextXY(40,70,'1. Вывести рез-ты для одного студента');
OutTextXY(40,90,'2. Вывести рез-ты для всей группы (таблица)');
OutTextXY(40,110,'3. Вывести рез-ты для всей группы (график)');
OutTextXY(40,130,'Для возврата к предыдущему меню нажмите (Esc)');
kol_kur:=4;
Kursor;
If n_menu=14
Then
Begin{Then}
Reset(f_sp_gr);
If p_kur=1
Then
Begin{Then}
ClearDevice;
Ramka;
SetColor(Green);
Rectangle(40,150,600,180);
SetColor(White);
OutTextXY(210,130,'Введите Ф.И.О. студента');
GoToXY(10,11);
Readln(name);
End;{Then}
ClearDevice;
kol_stud:=0;
d_ki:=0;
t_ki:=0;
ch_ki:=0;
p_ki:=0;
Rewrite(f1);
While not EOF
Begin{While}
Readln(f_sp_gr,stroka);
If p_kur=1
Then
Begin{Then}
stroka:=name;
End;{Then}
Reset(f_rez_gr);
prizn:=0;
kol_raz:=0;
While not EOF
Begin{While}
Readln(f_rez_gr,stroka_rez);
perem:=Copy(stroka_rez,1,Length(stroka));
If stroka=perem
Then
Begin{Then}
perem:=Copy(stroka_rez,Length(stroka)+1, Length(mas_pun[x]));
If mas_pun[x]=perem
Then
prizn:=1;
End{Then}
Else
prizn:=0;
If prizn=1
Then
Begin{Then}
kol_raz:=kol_raz+1; ocen:=copy(stroka_rez,Length(stroka_rez),1);
End;{Then}
End;{While}
If kol_raz>0
Then
Begin{Then}
Val(ocen,ocen2,Osh);
Case ocen2 of
2: d_ki:=d_ki+1;
3: t_ki:=t_ki+1;
4: ch_ki:=ch_ki+1;
5: p_ki:=p_ki+1;
End;{Case}
Write(f1,stroka);
Write(f1,kol_raz);
Writeln(f1,ocen);
kol_stud:=kol_stud+1;
End;{Then}
Close(f_rez_gr);
If p_kur=1
Then
While not EOF(f_sp_gr)do
Begin
Readln(f_sp_gr,stroka);
End;
End;{While}
Close(f1);
Case p_kur of
1,2:Begin{1,2}
If kol_stud<>0
Then
Begin{Then}
OutTextXY(40,70,'Ф.И.О.');
OutTextXY(220,70,'Кол-во прохождений оценка');
Line(200,70,200,400);
Line(420,70,420,400);
Line(40,82,600,82);
Reset(f1);
y1:=90;
Ramka;
OutTextXY(70,40,mas_pun[x]);
SetColor(Green);
Rectangle(40,430,600,445);
SetColor(White);
While not EOF(f1)do
Begin
Readln(f1,stroka);
n_oc:=copy(stroka,length(stroka)-1,2);
Delete(stroka,length(stroka)-1,2);
Insert(' ',n_oc,2);
OutTextXY(40,y1,stroka);
OutTextXY(320,y1,n_oc);
y1:=y1+20;
End;
Close(f1);
End{Then}
Else
Begin{Else}
Ramka;
OutTextXY(70,40,mas_pun[x]);
SetColor(Green);
Rectangle(40,430,600,445);
End;{Else}
End;{1,2}
3:Begin{2}
Diagram;
End;{3}
End;{Case}
Readkey;
Close(f_sp_gr);
key:='q'
End{Then}
Else
key:='q';
End;{Then}
Until key<>'q';
n_menu:=1;
proc:='s';
End;{Procedure}