If the input file contains only a number -9999998, your code will report that, but if that number is -9999999 or below, it reports "No line with number found."
Personally, I use undef instead of a magic number; my usual pattern is the following (expanded slightly for clarity):
my $max; for my $n ( qw/ 6 3 1 4 7 2 10 5 8 9 / ) { if ( !defined $max || $n > $max ) { $max = $n; } } print "Max: ", $max//"none", "\n";
Update: The suggestion to use undef as a special value actually applies to several other posts in this thread as well, at least here and here. OTOH, your code is the only one that uses a well-established module to find the numbers, there are several posts that simply use the original \d+, which of course will cause the code to think that -99 is larger than 98.
In reply to Re^2: Print the line with the largest number from standard input (updated)
by haukex
in thread Print the line with the largest number from standard input
by SSSufe
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |