function F=fact(n) % fact(n) n factorial if min(n)<0 error('undefined for n < 0') end n=n+(n==0); F=ones(size(n)); C=F; while max(n)>1 F=F.*n; n=n-1+(n==1); end