Список студентов, имеющих одинаковые фамилии, при условии, что фамилия-эталон вводится с экрана дисплея — Pascal(Паскаль)

Составить схему алгоритма и написать ТП - программу обработки массивов - записей, каждая из которых содержат информацию о студенте. 
В каждой записи:
- Фамилия студента;
- Год его рождения;
- Количество пропусков;
- Оценку за 1 экзамен;
- Оценку за 2 экзамен;
- Оценку за 3 экзамен;
И Выполнить задачу под номером, который совпадает с номером студента в журнале академической группы. Вывести на экран список.
uses crt;
const n=4;
type rec=record
      name:string;
      year:integer;
      kol:integer;
      p1,p2,p3:byte;
     end;
var x:array[1..n] of rec;
    i:integer;
    s:string;
begin
ClrScr;
for i:=1 to n do
 with x[i] do
  begin
   Write(' Name: ');
   Readln(name);
   Write(' Year: ');
   Readln(year);
   Write(' KolP: ');
   Readln(kol);
   Write(' Ocenka1: ');
   Readln(p1);
   Write(' Ocenka2: ');
   Readln(p2);
   Write(' Ocenka3: ');
   Readln(p3);
  end;
Writeln;
Writeln('Table: ');
Writeln('-----------------------------------------------');
Writeln('||  Name  |  Year  | KolP || Oc1 | Oc2 | Oc3 ||');
Writeln('-----------------------------------------------');
for i:=1 to n do
 Writeln('||',x[i].name:8,'|',x[i].year:8,'|',x[i].kol:6,
         '||',x[i].p1:5,'|',x[i].p2:5,'|',x[i].p3:5,'||');
Writeln('-----------------------------------------------');
Writeln('Enter: ');
Readln;
Write('Vvedite name studenta: ');
Readln(s);
for i:=1 to n do
 if s=x[i].name then
  Writeln(i,': ',x[i].name);
Readln;
end.

Leave a Comment

81 − = 72