From bash 4.0 onward, you can use Brace Expansion with fixed length strings. See below for the original announcement.
It will do just what you need, and does not require anything external to the shell.
$ echo {01..05}
01 02 03 04 05
for num in {01..05}
do
echo $num
done
01
02
03
04
05
CHANGES, release bash-4.0, section 3
This is a terse description of the new features added to bash-4.0 since
the release of bash-3.2.
. . .
z. Brace expansion now allows zero-padding of expanded numeric values and will add the proper number of zeroes to make sure all values contain the same number of digits.