http://www.perlmonks.org?node_id=407135


in reply to Finding the max()/min()

$max = $x%$y-$x ? $x : $y
cLive ;-)

update: d'oh. caveat - "for $x and $y both +ve integers lol...

Replies are listed 'Best First'.
Re^2: Finding the max()/min()
by sleepingsquirrel (Chaplain) on Nov 11, 2004 at 20:03 UTC
    $x=1; $y=0; $x=-1; $y=2; $x=1.2; $y=2;


    -- All code is 100% tested and functional unless otherwise noted.
      Ahh, good point ;-)

      Serves me right for trying to be creative on a Windows box sans Perl :)

      cLive ;-)

        This is the variant I found most straightforward to use:
        use List::Util qw[min max]; $m = max(1,2);
        Here you go:

        This is how one can find a maximum number in an array iteratively and recursively in Perl

        #!/usr/bin/perl my (@setOfnumbers); @setOfnumbers = ( 9, 7, 90, 3, 8, 412, 67, 2, 45, 53, 1, 3,89 ); print "Finding maximum number iteratively ", getMaximumNumber(@setOfnumbers) , "\n"; print "Finding maximum number recursively ", findMaximumNumber(@setOfnumbers) , "\n"; #Finding maximum number iteratively sub getMaximumNumber{ my ($maximumNumber); $maximumNumber = @_[0]; foreach(@_){ if ($_ > $maximumNumber){ $maximumNumber = $_; } } return $maximumNumber; } #Finding maximum number recursively sub findMaximumNumber{ my ($maximumNumber); if (@_ == 1){ $maximumNumber = shift(@_); return $maximumNumber; } else{ $maximumNumber = shift(@_); return (findMaximumNumber(@_) > $maximumNumber) ? findMaximumNumber(@_) : $maximumNumber; } }