home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1989 / 11 / grdlagen / strtest.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1989-06-11  |  1.4 KB  |  45 lines

  1. USES String1, Time;
  2.  
  3.  
  4. CONST MaxLoop = 1000;
  5.  
  6. VAR H, L: WORD;
  7.     A: STRING;
  8.     Time1, Time2, Start: REAL;
  9.  
  10.  
  11. BEGIN
  12.    WriteLn ('Comparing the user written string routines to TURBO-Pascal''s');
  13.    WriteLn;
  14.    Start := Clock;
  15.    A := 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz';
  16.    FOR L := 1 TO MaxLoop DO BEGIN
  17.       Insert ('12345678901234567890', A, PRED (SIZEOF(A)), 1);
  18.       H := Pos ('?', A);
  19.       Insert ('ABCDEFGHIJKLMNOPQRST', A, PRED (SIZEOF(A)), 40);
  20.       H := Pos ('ABCDEF', A);
  21.       Insert ('12345678901234567890', A, PRED (SIZEOF(A)), 255);
  22.       H := Pos ('90', A);
  23.       Delete (A, 40, 20);
  24.       Delete (A,  1, 20);
  25.       Delete (A, 53, 20);
  26.    END;
  27.    Time1 := Clock-Start;
  28.    WriteLn ('Time for user routines:     ', Time1/1000:5:3, ' sec   (= 100%)');
  29.    Start := Clock;
  30.    A := 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz';
  31.    FOR L := 1 TO MaxLoop DO BEGIN
  32.       System.Insert ('12345678901234567890', A, 1);
  33.       H := System.Pos ('?', A);
  34.       System.Insert ('ABCDEFGHIJKLMNOPQRST', A, 40);
  35.       H := System.Pos ('ABCDEF', A);
  36.       System.Insert ('12345678901234567890', A, 255);
  37.       H := System.Pos ('90', A);
  38.       System.Delete (A, 40, 20);
  39.       System.Delete (A,  1, 20);
  40.       System.Delete (A, 53, 20);
  41.    END;
  42.    Time2 := Clock-Start;
  43.    WriteLn ('Time for built-in routines: ', Time2/1000:5:3, ' sec   (=', Time2/Time1*100:4:0, '%)');
  44.  
  45. END.