DEADSOFTWARE

Исправлены переводы строк в модуле Reals
[dsw-obn.git] / rtl / Reals.obn
1 MODULE Reals; (* interface based on Oberon V4 *)
3 IMPORT SYSTEM, CPStrings, CPMath;
5 PROCEDURE Expo*(x: REAL): INTEGER;
6 BEGIN
7 RETURN SHORT(CPMath.Exponent(x));
8 END Expo;
10 PROCEDURE ExpoL*(x: LONGREAL): INTEGER;
11 BEGIN
12 RETURN SHORT(CPMath.Exponent(x));
13 END ExpoL;
15 PROCEDURE SetExpo*(e: INTEGER; VAR x: REAL);
16 BEGIN
17 x := SHORT(CPMath.Real(CPMath.Mantissa(x), e));
18 END SetExpo;
20 PROCEDURE SetExpoL*(e: INTEGER; VAR x: LONGREAL);
21 BEGIN
22 x := CPMath.Real(CPMath.Mantissa(x), e);
23 END SetExpoL;
25 PROCEDURE Ten*(e: INTEGER): REAL;
26 BEGIN
27 RETURN SHORT(CPMath.IntPower(10, e));
28 END Ten;
30 PROCEDURE TenL*(e: INTEGER): LONGREAL;
31 BEGIN
32 RETURN CPMath.IntPower(10, e);
33 END TenL;
35 PROCEDURE Convert*(x: REAL; n: INTEGER; VAR d: ARRAY OF CHAR);
36 BEGIN
37 CPStrings.RealToStringForm(x, n, 0, 3, "0", d);
38 END Convert;
40 PROCEDURE ConvertL*(x: LONGREAL; n: INTEGER; VAR d: ARRAY OF CHAR);
41 BEGIN
42 CPStrings.RealToStringForm(x, n, 0, 3, "0", d);
43 END ConvertL;
45 PROCEDURE ConvertH*(x: REAL; VAR d: ARRAY OF CHAR);
46 BEGIN
47 CPStrings.IntToStringForm(SYSTEM.VAL(LONGINT, x), CPStrings.hexadecimal, 0, "0", FALSE, d);
48 END ConvertH;
50 PROCEDURE ConvertHL*(x: LONGREAL; VAR d: ARRAY OF CHAR);
51 BEGIN
52 CPStrings.IntToStringForm(SYSTEM.VAL(HUGEINT, x), CPStrings.hexadecimal, 0, "0", FALSE, d);
53 END ConvertHL;
55 END Reals.