Your program has another serious bug. After it reports a win, it does not start a new game, but rather continues to prompt you to "Guess Again". Use strict and use warnings would find and report the error. (You have two variables named $guess) Of course this message tends to get lost in a sea of less serious error messages. Always use strict and warnings and fix all the errors that they report.
I have several comments on your style.
Most people (except perhaps old FORTRAN programers) find perl's do...while to be a bit quirky. Use them only when the offer a real advantage.
Do not append a newline to $rannumber. Better to chomp the newline from $guess.
You should separate code for validating input from real game code. Best to use a prompt modulue with a call back routine for validation.
UPDATE: Corrected typos
In reply to Re: Help with Guessing Game
by BillKSmith
in thread Help with Guessing Game
by dj_jodo
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |