in reply to How can I change the perl program involving if-elsif-else conditional to get correct result?
You can do the following, but I will also advise you understand how perl works
Put all your variable into a subroutine, and then iterate over them getting and returning the largest as done below in case (a)
Case a:
#!/usr/bin/perl use warnings; use strict; my $a=0.9; my $b=0.7; my $c=0.5; my $lar_value=max($a,$b,$c); print $lar_value," is the greatest",$/; sub max{ my $init=shift(@_); foreach(@_){ if($init>$_){ $init=$init; }else{$init= $_} } return $init; }
Case b: One can also use a module **List::Util** from CPAN http://search.cpan.org/~pevans/Scalar-List-Utils-1.25/lib/List/Util.pm. like this
I hope this helps.#!/usr/bin/perl use warnings; use strict; use List::Util qw(max); my $a=0.9; my $b=0.7; my $c=0.5; my $lar_value=max($a,$b,$c); print $lar_value, " is the greatest\n";
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: How can I change the perl program involving if-elsif-else conditional to get correct result?
by nemesdani (Friar) on Apr 23, 2012 at 11:45 UTC | |
by Marshall (Canon) on Apr 23, 2012 at 12:48 UTC |