home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / pascal / das_buch / profiler / comp2.pas < prev    next >
Pascal/Delphi Source File  |  1993-05-03  |  1KB  |  55 lines

  1. (* ------------------------------------------------------ *)
  2. (*                      COMP2.PAS                         *)
  3. (*            (c) 1993 te-wi Verlag, München              *)
  4. (* ------------------------------------------------------ *)
  5. PROGRAM Compare_2;
  6.  
  7. {$A+,B-,D+,E+,F-,G-,I+,L+,N-,O-,P-,Q+,R+,S+,T-,V+,X+,Y+}
  8. {$M 16384,0,655360}
  9.  
  10. TYPE
  11.   Quality = (Lss, Gtr, Eql);
  12.  
  13.   FUNCTION Compare(s1, s2 : STRING) : Quality;
  14.   VAR
  15.     t1, t2 : STRING;
  16.  
  17.     FUNCTION UpStr(s1 : STRING) : STRING;
  18.     VAR
  19.       s : STRING;
  20.       i : INTEGER;
  21.     BEGIN
  22.       s := '';
  23.       FOR i := 1 TO Length(s1) DO
  24.         s := s + UpCase(s[i]);
  25.       UpStr := s;
  26.     END;
  27.  
  28.   BEGIN
  29.     t1 := UpStr(s1);
  30.     t2 := UpStr(s2);
  31.     IF t1 = t2 THEN
  32.       Compare := Eql
  33.     ELSE IF t1 > t2 THEN
  34.       Compare := Gtr
  35.     ELSE IF t1 < t2 THEN
  36.       Compare := Lss;
  37.   END;
  38.  
  39. CONST
  40.   s1 : STRING = 'begin';
  41.   s2 : STRING = 'abs';
  42.   s3 : STRING = 'compare';
  43.   s4 : STRING = 'zappenduster';
  44.  
  45. BEGIN
  46.   WriteLn(Ord(Compare(s1, s2)));
  47.   WriteLn(Ord(Compare(s4, s1)));
  48.   WriteLn(Ord(Compare(s4, s4)));
  49.   WriteLn(Ord(Compare(s3, s4)));
  50. END.
  51. (* ------------------------------------------------------ *)
  52. (*                  Ende von COMP2.PAS                    *)
  53.  
  54.  
  55.