Факториал натурального числа

#!/usr/bin/perl $m = 8; print "\n test m= $m".fakt($m); sub fakt { my($n) = $_[0]; if($n<0) {die "argument can't be negative!"}; # необходимо добавить проверку на нецелые и нечисловые аргументы unless($n) {return(1)} else {return( $n*fakt($n-1) )}; }