1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code]. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Однонаправленный список (Студенты), работа со списком
end else while (sr<>nil) do if (sr^.pol='m') then Begin sl^.next:=sr^.next; dispose(sr); sl:=nil; end else begin sl:=sr; sr:=sr^.next; k:=k+1; end;
{4************************} if k<>n then n:=n-1 else writeln('Њг¦зЁ Ґв ў бЇЁбЄҐ'); new(pl); new(pr); new(head1); pr:=head; pr^.next:=head^.next; i:=0; for i:=1 to n do begin if i<>1 then pr:=pr^.next; mass[i]:=(pr^.ocen.mat + pr^.ocen.ang + pr^.ocen.inf + pr^.ocen.alg + pr^.ocen.fiz); writeln(mass[i]); end; pr:=nil; for i:=1 to n do begin m:=0; for j:=1 to n do begin if mass[j]>m then begin k:=j; m:=mass[j]; end; end; writeln(k);
pr:=head;
while j<=(k-1) do Begin sr:=pr^.next; pr:=sr; j:=j+1; end; write(pr^.name); write(pr^.voz); write(pr^.pol); write(pr^.ocen.mat); write(pr^.ocen.ang); write(pr^.ocen.inf); write(pr^.ocen.alg); writeln(pr^.ocen.fiz);
if i=1 then head1:=pr else if i<n then if i=2 then begin pl:=pr; head1^.next:=pl; end else if g=0 then begin new(sl); sl:=pr; pl^.next:=sl; g:=g+1; end else begin new(pl); pl:=pr; sl^.next:=pl; g:=g-1; end else begin if g=0 then pl^.next:=pr else sl^.next:=pr; pr^.next:=nil; end; mass[k]:=0; end; head:=head1; head^.next:=head1^.next; head1:=nil;
{5************************} new(pr); pr:=head; pr^.next:=head^.next; for i:=1 to n do begin write(pr^.name); write(pr^.voz); write(pr^.pol); write(pr^.ocen.mat); write(pr^.ocen.ang); write(pr^.ocen.inf); write(pr^.ocen.alg); writeln(pr^.ocen.fiz); if i = n then begin break; end else begin pr:=pr^.next; end; end; pr:=nil;