http://www.perlmonks.org?node_id=242633

lacertus has asked for the wisdom of the Perl Monks concerning the following question:

Howdy Y'all,

I'm fairly n00b at Perl here, so go easy on me. I am encountering an interesting problem that I have as yet not run across in my short experience.

It works thus: while I am validating user input with a basic do-while loop
$i=0; do { print "Not an option!\n" if $i>0; print "Are you to proceed? (y/n): "; chomp($make_account = <STDIN>); ++$i; die "\nCiao!\n" if (($make_account eq 'n') || ($make_account e +q 'N')); } while ( ($make_account ne 'y') || ($make_account ne 'Y') );
For some reason, the while loop does not accept *any* input (that is, 'y' or 'Y') as being valid? And yet an slightly altered form of the input check in the form of an if statement works fine. Please, any help would greatly ease my mind!

Thanks in advance.