home *** CD-ROM | disk | FTP | other *** search
- { Alphabetic Rec Sort }
-
- Procedure SortIt(Key : Byte);
- Var
- I, J : Byte;
-
- Procedure Swapper;
- Var
- T : Member;
-
- begin
- T := Memrec[I];
- MemRec[I] := MemRec[J];
- MemRec[J] := T;
- end;
-
- begin
- For I := 1 to MaxMem - 1 DO
- For J := I To MaxMem do begin
- Case Key OF
- 1 : if MemRec[I].Firstname < MemRec[J].FirstName then Swapper;
- 2 : if MemRec[I].LastName < MemRec[J].LastName then Swapper;
- 3 : if MemRec[I].Points < MemRec[J].Points then Swapper;
- end;
- end;
-
- {
- Another Alternative would be to do as C does, make a Generic Sort routine
- where you pass it a Function that returns > 0 if Record1 is greater than
- Record2, < 0 if Record1 is Less than Record2, and 0 if they are the same.
- }