TOC -- / --.-- / --.--.-- | Index | Search | Syntax | Help

- (1)
- The library package Decimal has the following declaration:

(2) package Ada.Decimal is pragma Pure(Decimal); (3) Max_Scale : constant := implementation-defined; Min_Scale : constant := implementation-defined; (4) Min_Delta : constant := 10.0**(-Max_Scale); Max_Delta : constant := 10.0**(-Min_Scale); (5) Max_Decimal_Digits : constant := implementation-defined; (6) generic type Dividend_Type is delta <> digits <>; type Divisor_Type is delta <> digits <>; type Quotient_Type is delta <> digits <>; type Remainder_Type is delta <> digits <>; procedure Divide (Dividend : in Dividend_Type; Divisor : in Divisor_Type; Quotient : out Quotient_Type; Remainder : out Remainder_Type); pragma Convention(Intrinsic, Divide); (7) end Ada.Decimal;

- (8)
- Max_Scale is the largest N such that 10.0**(-N) is allowed as a decimal type's delta. Its type is universal_integer.
- (9)
- Min_Scale is the smallest N such that 10.0**(-N) is allowed as a decimal type's delta. Its type is universal_integer.
- (10)
- Min_Delta is the smallest value allowed for delta in a decimal_fixed_point_definition. Its type is universal_real.
- (11)
- Max_Delta is the largest value allowed for delta in a decimal_fixed_point_definition. Its type is universal_real.
- (12)
- Max_Decimal_Digits is the largest value allowed for digits in a decimal_fixed_point_definition. Its type is universal_integer.

- (13)
- The effect of Divide is as follows. The value of Quotient is Quotient_Type(Dividend/Divisor). The value of Remainder is Remainder_Type(Intermediate), where Intermediate is the difference between Dividend and the product of Divisor and Quotient; this result is computed exactly.

- (14)
- Decimal.Max_Decimal_Digits shall be at least 18.
- (15)
- Decimal.Max_Scale shall be at least 18.
- (16)
- Decimal.Min_Scale shall be at most 0.
- NOTES

- (17)
- (1) The effect of division yielding a quotient with control over
rounding versus truncation is obtained by applying either the function
attribute Quotient_Type'Round or the conversion Quotient_Type to the
expression Dividend/Divisor.

TOC -- / --.-- / --.--.-- | Index | Search | Syntax | Help

-- Email comments, additions, corrections, gripes, kudos, etc. to:

Magnus Kempe -- Magnus.Kempe@di.epfl.chCopyright statement

Page last generated: 95-03-12