Book HomeJava and XSLTSearch this book

8.145. Math::BigRat

Allows you to use arbitrarily big rationals. Math::BigRat is shipped with the Perl 5.8 source kit.

For example:

#!/usr/local/bin/perl -w
use Math::BigRat;
my $rat = Math::BigRat->new('2/7');
 
print $rat->bstr(), "\n";

Math::BigRat implements the following methods.

new

new(value)

Creates a new Math::BigRat object. You can use all types of input for new(): '3/5', '2/33', '6/9', etc.

denominator

denominator()

Returns a copy of the denominator as a positive BigInt:

my $rat = Math::BigRat->new('2/7')

print $rat->denominator(), "\n"; # Prints 7
numerator

numerator()

Returns a copy of the numerator as a signed BigInt:

my $rat = Math::BigRat->new('2/7');
print $rat->numerator(), "\n"; # Prints 2
parts

parts()

Returns a list consisting of a signed numerator and unsigned denominator. Both are BigInts.

my($n, $d) = $rat->parts(); ### Ewwww, rat parts!
print "numerator: $n\n";
print "denominator: $d\n";


Library Navigation Links

Copyright © 2002 O'Reilly & Associates. All rights reserved.