views:

190

answers:

1

I'm trying to use the bignum module in Perl and want to set the precision. I know this can be done via a one liner as detailed on the module's CPAN page:

$ perl -Mbignum=p,-50 -le 'print sqrt(20)'

...which will print out the square root of 20 to 50 digits of precision, but what I'm wondering is if there's anyway to set the precision within a script, i.e. something like:

#!/usr/bin/perl
use bignum;

setPrecision(-50);
print sqrt(20);

I've searched around here, Google, and PerlMonks without any luck so far. Thanks in advance.

+9  A: 

Per Anon.'s suggestion:

#!/usr/bin/perl

use strict;
use warnings;

use bignum ( p => -50 );

print sqrt(20);

You might like to look at the docs for Math::BigFloat and Math::BigInt which bignum makes use of.

martin clayton
theraccoonbear