tminmaxconst.pp 569 B

123456789101112131415161718192021222324
  1. uses
  2. sysutils,math;
  3. var
  4. s: Single;
  5. d: Double;
  6. begin
  7. s := MaxSingle;
  8. d := MaxDouble;
  9. Writeln(IntToHex(PLongInt(@s)^, 8));
  10. if IntToHex(PLongInt(@s)^, 8)<>'7F7FFFFF' then
  11. halt(1);
  12. Writeln(IntToHex(PInt64(@d)^, 16));
  13. if IntToHex(PInt64(@d)^, 16)<>'7FEFFFFFFFFFFFFF' then
  14. halt(2);
  15. s := MinSingle;
  16. d := MinDouble;
  17. Writeln(IntToHex(PLongInt(@s)^, 8));
  18. if IntToHex(PLongInt(@s)^, 8)<>'00800000' then
  19. halt(3);
  20. Writeln(IntToHex(PInt64(@d)^, 16));
  21. if IntToHex(PInt64(@d)^, 16)<>'0010000000000000' then
  22. halt(4);
  23. writeln('ok');
  24. end.