Advertisement
Abaduaber

POLANN_B

Apr 3rd, 2013
319
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.99 KB | None | 0 0
  1. Type
  2.     tStudent = Record
  3.       fSurname: String[40];
  4.       fGroup: Integer;
  5.       fSubjC: Array [1..5] Of Char;
  6.       fAvSc: Integer;
  7.     End;
  8.     TStuds = Array [1..25] Of tStudent;
  9. Var
  10.     I, II: Integer;
  11.     FD: File Of tStuds;
  12.     Studs, DStuds: tStuds;
  13.     TempSt: tStudent;
  14.     X, DI, SI, SJ: Integer;
  15. Begin
  16.     Assign(FD, 'students.dat');
  17.     Reset(FD);
  18.     Read(FD, Studs);
  19.     Close(FD);
  20.     Write('Input subject number [1..5]: ');
  21.     ReadLn(X);
  22.     DI:= 0;
  23.     For I:= 1 To 25 Do With Studs[I] Do Begin
  24.       If fSubjC[X] = '1' Then Begin
  25.         Inc(DI);
  26.         DStuds[DI]:= Studs[I];
  27.       End;
  28.     End;
  29.     If DI > 8 Then Begin
  30.       For SJ:= 1 To DI - 1 Do
  31.         For SI:= 1 To DI - SJ Do
  32.           If DStuds[SI].fAvSc > DStuds[SI + 1].fAvSc Then Begin
  33.             TempSt:= DStuds[SI]; DStuds[SI]:= DStuds[SI + 1];
  34.             DStuds[SI + 1]:= TempSt;
  35.           End;
  36.     End;
  37.     For I:= 1 To DI Do If I <= 8 Then WriteLn(DStuds[I].fSurname);
  38.  
  39.     ReadLn;
  40. End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement