On Tue, 2008-12-30 at 07:10 -0600, David Ehresmann wrote: > I have a factorial script that calls a sub fact that does the > factorial and returns a value. But I get this error when I execute > the script: > > Use of uninitialized value in numeric gt (>) at fact.pl line 22. > > Here is the script: > > #!/usr/bin/perl > > use warnings; > use strict; > > fact();
This calls the sub with an undef arguement. Just delete this line. > my $num; > > print "enter a number: \n"; > chomp($num = <STDIN>); > > my $x = fact($num); > print "the factorial is: $x\n"; > > sub fact { > my $num = 0; > $num = shift; Can be done in one line : my $num = shift @_; > my $res = 1; > while ($num > 1) { > $res *= $num; > $num--; > } > return $res; > } -- Just my 0.00000002 million dollars worth, Shawn Believe in the Gods but row away from the rocks. -- ancient Hindu proverb -- To unsubscribe, e-mail: beginners-unsubscr...@perl.org For additional commands, e-mail: beginners-h...@perl.org http://learn.perl.org/