in reply to Re: Print the line with the largest number from standard input (updated)
in thread Print the line with the largest number from standard input
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.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Print the line with the largest number from standard input (updated)
by mr_ron (Deacon) on Jul 30, 2019 at 14:23 UTC | |
by haukex (Archbishop) on Jul 30, 2019 at 17:34 UTC | |
by mr_ron (Deacon) on Aug 05, 2019 at 02:54 UTC | |
by haukex (Archbishop) on Aug 05, 2019 at 09:33 UTC |