Fatorial
Calcula o fatorial de um número de 1 a 20. Esta faixa representa o limite possível de cálculo no Bash por este método.
Descrição
Calcula o fatorial de um número de 1 a 20. Esta faixa representa o limite possível de cálculo no Bash por este método.
#!/bin/bash
fat (){
[[ "$#" != "1" ]] && echo erro 1 && exit 1;
[[ -z $1 ]] && echo erro 2 && exit 2;
[[ -z ${1//[0-9] /} ]] && echo erro 3 && exit 3;
[[ $1 -ge 21 ]] && echo erro 4 && exit 4;
[[ $1 -le 0 ]] && echo erro 5 && exit 5;
f1=1;
for ((i=$1;i>0;)); do
let f1*=i--;
done;
echo $f1;
}
fat $1;
# echo $((`seq -s \* 10`));
No exemplo calculei o fatorial de 10. Achei muito interessante pois usa-se apenas uma linha de código.
[]'s