(* Abbreviation: MathLib0 *) (* Version 1.10, Nov 1984 *) DEFINITION MODULE MathLib0; (* Real Math Functions From the book 'Programming in Modula-2' by Prof. N. Wirth. *) EXPORT QUALIFIED sqrt, exp, ln, sin, cos, arctan, real, entier; PROCEDURE sqrt(x: REAL): REAL; (* - returns square root x x must be positive. *) PROCEDURE exp(x: REAL): REAL; (* - returns e^x where e = 2.71828.. *) PROCEDURE ln(x: REAL): REAL; (* - returns natural logarithm with base e = 2.71828.. of x x must be positive and not zero *) PROCEDURE sin(x: REAL): REAL; (* - returns sin(x) where x is given in radians *) PROCEDURE cos(x: REAL): REAL; (* - returns cos(x) where x is given in radians *) PROCEDURE arctan(x: REAL): REAL; (* - returns arctan(x) in radians *) PROCEDURE real(x: INTEGER): REAL; (* - type conversion from INTEGER to REAL *) PROCEDURE entier(x: REAL): INTEGER; (* - returns the largest integer number less or equal x Examples: entier(1.5) = 1; entier(-1.5) = -2; If x cannot be represented in an INTEGER, the result is undefined. *) END MathLib0.