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

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

i have this two files below. the first one produces no errors but the second one produces the following errors:

Global symbol "$x" requires explicit package name (did you forget to declare "my $x"?) at ./two.pl line 6.
Global symbol "$y" requires explicit package name (did you forget to declare "my $y"?) at ./two.pl line 7.
Global symbol "$x" requires explicit package name (did you forget to declare "my $x"?) at ./two.pl line 10.
Global symbol "$y" requires explicit package name (did you forget to declare "my $y"?) at ./two.pl line 13.
Global symbol "$x" requires explicit package name (did you forget to declare "my $x"?) at ./two.pl line 15.
Global symbol "$y" requires explicit package name (did you forget to declare "my $y"?) at ./two.pl line 15.
Execution of ./two.pl aborted due to compilation errors.

this is file 1:
#!/usr/bin/perl use warnings; use strict; $a=0; chomp($a=<STDIN>); print $a, "\n";
and this is file 2:
#!/usr/bin/perl use warnings; use strict; $x=0; $y=0; print "enter first number "; chomp($x=<STDIN>); print "enter second number "; chomp($y=<STDIN>); print "Product ",$x*$y, "\n";
i can't seem to figure out what's causing the errors for file 2. the declaration is the same in both files.