Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function fact {
- local n="$1"
- if [ $n -eq 1 ]; then
- echo $n
- else
- nn=$( fact $((n-1)) )
- echo $(( n*nn ))
- fi
- }
- function fib {
- local n="$1"
- if[ $n -le 2]; then
- echo $n
- else
- p1=$( fib $((n-1)) )
- p2=$( fib $((n-2)) )
- echo $((p1+p2))
- fi
- }
- function faciter {
- local p=1
- local cnt=1
- for ((i=1;i<=$1;i++))
- do
- p=$(($p*$i));
- done
- echo $p
- }
- function fibiter {
- local f=0
- local s=1
- for ((i=0;i<=$1;i++))
- do
- local tmp=$s
- s=$(($f+$s))
- f=$tmp
- done
- echo $f
- }
- case "$1" in (fact)
- fact $2
- ;;
- (faciter)
- faciter $2
- ;;
- (fibiter)
- fibiter $2
- ;;
- (fib)
- fib $2
- ;;
- (--help)
- echo "Shell script that computes N-th fibonacii number and factoriel of N.
- Usage: fibiter / fib for recursive/ iterative calculation of N-th fibonacii number.
- fact/faciter for calculating factoriel of N!"
- ;;
- esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement