Can you use ksh instead of sh? If so, you can easily test the answers with something like:
Code:
#!/bin/ksh
...possible code...
# Declare inputs as integers
integer n1=0 n2=0
...possible code...
# Take n1 input
until (( $n1 > 0 && $n1 < 21 )); do
print -n "Please enter a positive integer between 1 and 20: "; read n1
if (( $n1 < 0 || $n1 > 20 )); then
print "$n1 is out of range."
fi
done
# Take n2 input
until (( $n2 > 0 && $n2 < 21 )); do
print -n "Please enter another positive integer between 1 and 20: "; read n2
if (( $n2 < 0 || $n2 > 20 )); then
print "$n2 is out of range."
fi
done