todd.pp 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. { Part of System unit testsuit }
  2. { Carl Eric Codere Copyright (c) 2002 }
  3. program todd;
  4. const
  5. RESULT_ONE = FALSE;
  6. VALUE_ONE = -65536;
  7. RESULT_CONST_ONE = odd(VALUE_ONE);
  8. RESULT_TWO = TRUE;
  9. VALUE_TWO = 12345;
  10. RESULT_CONST_TWO = odd(VALUE_TWO);
  11. procedure fail;
  12. begin
  13. WriteLn('Failure!');
  14. halt(1);
  15. end;
  16. var
  17. r: longint;
  18. _success : boolean;
  19. l: boolean;
  20. Begin
  21. Write('Odd() testing...');
  22. _success := true;
  23. r:=VALUE_ONE;
  24. if odd(r)<>RESULT_ONE then
  25. _success:=false;
  26. if odd(VALUE_ONE)<>RESULT_ONE then
  27. _success:=false;
  28. r:=VALUE_ONE;
  29. if odd(r)<>RESULT_CONST_ONE then
  30. _success := false;
  31. r:=VALUE_ONE;
  32. l:=odd(r);
  33. if l<>RESULT_ONE then
  34. _success:=false;
  35. l:=odd(VALUE_ONE);
  36. if l<>RESULT_ONE then
  37. _success:=false;
  38. r:=VALUE_TWO;
  39. if odd(r)<>RESULT_TWO then
  40. _success:=false;
  41. if odd(VALUE_TWO)<>RESULT_TWO then
  42. _success:=false;
  43. r:=VALUE_TWO;
  44. if odd(r)<>RESULT_CONST_TWO then
  45. _success := false;
  46. r:=VALUE_TWO;
  47. l:=odd(r);
  48. if l<>RESULT_TWO then
  49. _success:=false;
  50. l:=odd(VALUE_TWO);
  51. if l<>RESULT_TWO then
  52. _success:=false;
  53. if not _success then
  54. fail;
  55. WriteLn('Success!');
  56. end.