Math::BigFloat(3) Math::BigFloat(3)
Math::BigFloat - Arbitrary length float math package
use Math::BogFloat;
$f = Math::BigFloat->new($string);
$f->fadd(NSTR) return NSTR addition
$f->fsub(NSTR) return NSTR subtraction
$f->fmul(NSTR) return NSTR multiplication
$f->fdiv(NSTR[,SCALE]) returns NSTR division to SCALE places
$f->fneg() return NSTR negation
$f->fabs() return NSTR absolute value
$f->fcmp(NSTR) return CODE compare undef,<0,=0,>0
$f->fround(SCALE) return NSTR round to SCALE digits
$f->ffround(SCALE) return NSTR round at SCALEth place
$f->fnorm() return (NSTR) normalize
$f->fsqrt([SCALE]) return NSTR sqrt to SCALE places
All basic math operations are overloaded if you declare your big floats
as
$float = new Math::BigFloat "2.123123123123123123123123123123123";
number format
canonical strings have the form /[+-]\d+E[+-]\d+/ . Input values can
have inbedded whitespace.
Error returns 'NaN'
An input parameter was "Not a Number" or divide by zero or sqrt of
negative number.
Division is computed to
max($div_scale,length(dividend)+length(divisor)) digits by default.
Also used for default sqrt scale.
The current version of this module is a preliminary version of the real
thing that is currently (as of perl5.002) under development.
Mark Biggar
Page 1
Math::BigFloat(3) Math::BigFloat(3)
PPPPaaaaggggeeee 2222 [ Back ]
|