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

#!/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) ); }