#!/bin/bash
#
# compute n factorial using recursive function (version from 9/07 class)
# (an example of recursion)
#
# WARNING:  script behaves very badly if argument is not an integer!
#
factorial() {
if [ $1 -eq 0 ]
then
    echo 1
else
    t=$(factorial $(expr $1 - 1))
    expr $1 \* $t
fi
}

# main script
if [ -z "$1" ]
then
    echo usage $(basename $0) n
    exit 1
fi

echo factorial of $1 is $(factorial $1)
