How to check if integer multiplication will overflow in Perl

1 Answer

0 votes
sub multiply_will_overflow {
    my ($x, $y) = @_;
    
    return 'Inf' eq $x * $y;
}

my $x = 23798435;
my $y = 9569567456;
print multiply_will_overflow($x, $y) ? "True" : "False";
 
print "\n";


my $x = 834523798435467598956956994748760474576625132534547355456756834523798435467598956956994748760474576625132534547355456756;
my $y = 98956956994748760474576625132534547355456756989569569947487604745766251325345473554567569895695699474876047457662513253454735545675698956956994748760474576625132534547355456756989569569947487604745766251325345473554567569847355456756;
print multiply_will_overflow($x, $y) ? "True" : "False";

 
 
## run:
##
## False
## True
##

 



answered May 18, 2025 by avibootz

Related questions

1 answer 169 views
3 answers 239 views
239 views asked May 20, 2025 by avibootz
1 answer 157 views
157 views asked May 19, 2025 by avibootz
...