#!/bin/bash
#### Compute factorial (recursively)

fac()
{
  if [ "$1" -le "1" ]
  then
	echo 1			# Base case -- return 1.
  else
	n1=`expr $1 - 1`	# n-1
	fn1=`factorial $n1`	# (n-1)!
 	result=`expr $1 \* $fn1`	# n! = n * (n-1)!
	# Avoid globbing *
	echo $result		# Return the result.
  fi
}

echo "#### Factorials ####"
echo "(Enter zero to stop.)"
echo -n "Enter the first number	"
read n

while [ $n -ge 1 ]
do
	answer=`fac $n`
	echo -n "The factorial of $n is:  $answer"
	
	echo -n "Next number (or zero)	"
	read n
done

echo "# Thanks for using my factorial script.#"
echo ""
