ex100.pp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. Program Example100;
  2. { Program to demonstrate the CompareChar function. }
  3. Const
  4. ArraySize = 100;
  5. HalfArraySize = ArraySize Div 2;
  6. Var
  7. Buf1,Buf2 : Array[1..ArraySize] of char;
  8. I : longint;
  9. Procedure CheckPos(Len : Longint);
  10. Begin
  11. Write('First ',Len,' characters are ');
  12. if CompareChar(Buf1,Buf2,Len)<>0 then
  13. Write('NOT ');
  14. Writeln('equal');
  15. end;
  16. Procedure CheckNullPos(Len : Longint);
  17. Begin
  18. Write('First ',Len,' non-null characters are ');
  19. if CompareChar0(Buf1,Buf2,Len)<>0 then
  20. Write('NOT ');
  21. Writeln('equal');
  22. end;
  23. begin
  24. For I:=1 to ArraySize do
  25. begin
  26. Buf1[i]:=chr(I);
  27. If I<=HalfArraySize Then
  28. Buf2[I]:=chr(I)
  29. else
  30. Buf2[i]:=chr(HalfArraySize-I);
  31. end;
  32. CheckPos(HalfArraySize div 2);
  33. CheckPos(HalfArraySize);
  34. CheckPos(HalfArraySize+1);
  35. CheckPos(HalfArraySize + HalfArraySize Div 2);
  36. For I:=1 to 4 do
  37. begin
  38. buf1[Random(ArraySize)+1]:=Chr(0);
  39. buf2[Random(ArraySize)+1]:=Chr(0);
  40. end;
  41. Randomize;
  42. CheckNullPos(HalfArraySize div 2);
  43. CheckNullPos(HalfArraySize);
  44. CheckNullPos(HalfArraySize+1);
  45. CheckNullPos(HalfArraySize + HalfArraySize Div 2);
  46. end.