Math::BigInt::Calc

Section: User Contributed Perl Documentation (3pm)
Updated: 2023-03-31
Index Return to Main Contents
 

NAME

Math::BigInt::Calc - pure Perl module to support Math::BigInt  

SYNOPSIS

    # to use it with Math::BigInt
    use Math::BigInt lib => 'Calc';

    # to use it with Math::BigFloat
    use Math::BigFloat lib => 'Calc';

    # to use it with Math::BigRat
    use Math::BigRat lib => 'Calc';

    # explicitly set base length and whether to "use integer"
    use Math::BigInt::Calc base_len => 4, use_int => 1;
    use Math::BigInt lib => 'Calc';

 

DESCRIPTION

Math::BigInt::Calc inherits from Math::BigInt::Lib.

In this library, the numbers are represented interenally in base B = 10**N, where N is the largest possible integer that does not cause overflow in the intermediate computations. The base B elements are stored in an array, with the least significant element stored in array element zero. There are no leading zero elements, except a single zero element when the number is zero. For instance, if B = 10000, the number 1234567890 is represented internally as [7890, 3456, 12].  

OPTIONS

When the module is loaded, it computes the maximum exponent, i.e., power of 10, that can be used with and without ``use integer'' in the computations. The default is to use this maximum exponent. If the combination of the 'base_len' value and the 'use_int' value exceeds the maximum value, an error is thrown.
base_len
The base length can be specified explicitly with the 'base_len' option. The value must be a positive integer.

    use Math::BigInt::Calc base_len => 4;  # use 10000 as internal base

use_int
This option is used to specify whether ``use integer'' should be used in the internal computations. The value is interpreted as a boolean value, so use 0 or "" for false and anything else for true. If the 'base_len' is not specified together with 'use_int', the current value for the base length is used.

    use Math::BigInt::Calc use_int => 1;   # use "use integer" internally

 

METHODS

This overview constains only the methods that are specific to "Math::BigInt::Calc". For the other methods, see Math::BigInt::Lib.
_base_len()
Specify the desired base length and whether to enable ``use integer'' in the computations.

    Math::BigInt::Calc -> _base_len($base_len, $use_int);

Note that it is better to specify the base length and whether to use integers as options when the module is loaded, for example like this

    use Math::BigInt::Calc base_len => 6, use_int => 1;

 

SEE ALSO

Math::BigInt::Lib for a description of the API.

Alternative libraries Math::BigInt::FastCalc, Math::BigInt::GMP, Math::BigInt::Pari, Math::BigInt::GMPz, and Math::BigInt::BitVect.

Some of the modules that use these libraries Math::BigInt, Math::BigFloat, and Math::BigRat.


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
METHODS
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 16:19:31 GMT, April 16, 2024