viernes, 21 de noviembre de 2014

PoL: Factorial

Factorial en PoL:

perl -le 'sub k { return ($_[0] * (k($_[0]-1))) if ($_[0] > 1);return 1;} print k($ARGV[0]);' 2

básicamente Factorail es:

n * n-1 * n-2 * ... * 1

Para hacer una funcion recursiva simplemente vemos

n * (n-1) * (n-2) ... * 1

Lo que basicamente indica la pate que uno tiene que usar como recursiva:

(n-1)

Y para perl

sub fact {
return  (  $_0] * (fact($_[0]-1)) if ($_[0] > 1) ;
return 1;
}