📄 big_ap.t
字号:
#!/usr/bin/perl -w# Test that accuracy() and precision() in BigInt/BigFloat do not disturb# the rounding force in BigRat.use Test;use strict;BEGIN { $| = 1; chdir 't' if -d 't'; unshift @INC, '../lib'; plan tests => 17; }use Math::BigInt;use Math::BigFloat;use Math::BigRat;my $r = 'Math::BigRat';my $proper = $r->new('12345678901234567890/2');my $proper_inc = $r->new('12345678901234567890/2')->binc();my $proper_dec = $r->new('12345678901234567890/2')->bdec();my $proper_int = Math::BigInt->new('12345678901234567890');my $proper_float = Math::BigFloat->new('12345678901234567890');my $proper2 = $r->new('12345678901234567890');print "# Start\n";Math::BigInt->accuracy(3);Math::BigFloat->accuracy(5);my ($x,$y,$z);############################################################################### new()$z = $r->new('12345678901234567890/2');ok ($z,$proper);$z = $r->new('1234567890123456789E1');ok ($z,$proper2);$z = $r->new('12345678901234567890/1E0');ok ($z,$proper2);$z = $r->new('1234567890123456789e1/1');ok ($z,$proper2);$z = $r->new('1234567890123456789e1/1E0');ok ($z,$proper2);$z = $r->new($proper_int);ok ($z,$proper2);$z = $r->new($proper_float);ok ($z,$proper2);############################################################################### bdiv$x = $r->new('12345678901234567890'); $y = Math::BigRat->new('2');$z = $x->copy->bdiv($y);ok ($z,$proper);############################################################################### bmul$x = $r->new("$proper"); $y = Math::BigRat->new('1');$z = $x->copy->bmul($y);ok ($z,$proper);$z = $r->new('12345678901234567890/1E0');ok ($z,$proper2);$z = $r->new($proper_int);ok ($z,$proper2);$z = $r->new($proper_float);ok ($z,$proper2);############################################################################### bdiv$x = $r->new('12345678901234567890'); $y = Math::BigRat->new('2');$z = $x->copy->bdiv($y);ok ($z,$proper);############################################################################### bmul$x = $r->new("$proper"); $y = Math::BigRat->new('1');$z = $x->copy->bmul($y);ok ($z,$proper);$x = $r->new("$proper"); $y = Math::BigRat->new('2');$z = $x->copy->bmul($y);ok ($z,$proper2);############################################################################### binc/bdec$x = $proper->copy()->binc(); ok ($x,$proper_inc);$x = $proper->copy()->bdec(); ok ($x,$proper_dec);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -