Math::BigInt、Math::BigFloat - 大きな桁数を持つ数の計算
Perlの数値の有効桁数は15~16桁くらいで、普通の演算ではこれ以上大きな数の演算を行うことができません。大きな桁の数値を扱いたい場合はMath::BigIntやMath::BigFloatを使用します。
大きな整数の演算
大きな整数の演算を行うにはMath::BigIntモジュールで生成したオブジェクトを用いて計算を行います。
use Math::BigInt; my $big_int = Math::BigInt->new("11111111111111111111111111111111111111111111"); $big_int = $big_int * 2;
小数点以下の桁数が大きい数の演算
Math::BigFloatモジュールで生成したオブジェクトを用いて計算を行います。
use Math::BigFloat; my $big_float = Math::BigFloat->new( "0.1111111111111111111111111111111111111"); $big_float = $big_float * 2;
サンプル
Math::BigInt、Math::BigFloatを使ったサンプルです。
use strict; use warnings; use Math::BigInt; use Math::BigFloat; print "(1)大きな整数の演算\n"; my $big_int = Math::BigInt->new("11111111111111111111111111111111111111111111"); $big_int = $big_int * 2; print $big_int . "\n\n"; print "(2)小数点以下の桁数が大きい数の演算\n"; my $big_float = Math::BigFloat->new( "0.1111111111111111111111111111111111111"); $big_float = $big_float * 2; print $big_float . "\n";