Ok, I see you changed the lines inside the loop, to something that is definitely wrong as long as you don't change the rest. Please put it back as it were (i.e to @Axcord[$counter] =...). The code is not pretty, but it is not really wrong. Also add "\n" after your print statements so your debug output is not all on one line. You might also change one of the print lines this way to give more information:
print STDOUT "should print out \@Axcord array but does'nt?! |", join('
+|',@Axcord),"|",scalar(@Axcord),\n";
That will print '|' between anything that is in the array and also the size of the array. After that execute and tell us what gets printed and (if possible) what you would expect.
Also you might put similar print statements at the beginning of the subroutine to find out what input values the subroutine gets. Maybe the routine does everything right and it is the input that is wrong.
By the way, you forgot code tags around your data, this way it is unusable. But anyway it is a bit large, usually you should try to trim down the problem as much as you can, code as well as data. |