MathLib0.mod 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. (*
  2. (c) copyright 1988 by the Vrije Universiteit, Amsterdam, The Netherlands.
  3. See the copyright notice in the ACK home directory, in the file "Copyright".
  4. *)
  5. (*$R-*)
  6. IMPLEMENTATION MODULE MathLib0;
  7. (*
  8. Module: Some mathematical functions
  9. Author: Ceriel J.H. Jacobs
  10. Version: $Id$
  11. *)
  12. IMPORT Mathlib;
  13. PROCEDURE cos(arg: REAL): REAL;
  14. BEGIN
  15. RETURN Mathlib.cos(arg);
  16. END cos;
  17. PROCEDURE sin(arg: REAL): REAL;
  18. BEGIN
  19. RETURN Mathlib.sin(arg);
  20. END sin;
  21. PROCEDURE arctan(arg: REAL): REAL;
  22. BEGIN
  23. RETURN Mathlib.arctan(arg);
  24. END arctan;
  25. PROCEDURE sqrt(arg: REAL): REAL;
  26. BEGIN
  27. RETURN Mathlib.sqrt(arg);
  28. END sqrt;
  29. PROCEDURE ln(arg: REAL): REAL;
  30. BEGIN
  31. RETURN Mathlib.ln(arg);
  32. END ln;
  33. PROCEDURE exp(arg: REAL): REAL;
  34. BEGIN
  35. RETURN Mathlib.exp(arg);
  36. END exp;
  37. PROCEDURE entier(x: REAL): INTEGER;
  38. VAR i: INTEGER;
  39. BEGIN
  40. IF x < 0.0 THEN
  41. i := TRUNC(-x);
  42. IF FLOAT(i) = -x THEN
  43. RETURN -i;
  44. ELSE
  45. RETURN -i -1;
  46. END;
  47. END;
  48. RETURN TRUNC(x);
  49. END entier;
  50. PROCEDURE real(x: INTEGER): REAL;
  51. BEGIN
  52. IF x < 0 THEN
  53. RETURN - FLOAT(-x);
  54. END;
  55. RETURN FLOAT(x);
  56. END real;
  57. BEGIN
  58. END MathLib0.