|Perl: the Markov chain saw|
Re: Newbie Errorsby Sherlock (Deacon)
|on May 30, 2001 at 07:28 UTC||Need Help??|
If you look closely at your script, you'll notice that you read 1 line from your file (as expected). When you leave the loop to read from your file, $foo = 1. If you then look at each of your for loops below, they run from 0 to (and including) $max_vectors, which is equal to $foo, or 1. Therefore, those loops will each run twice, the first time, performing operations on $vectorA, $angleA, etc. and the next time on $vectorA, $angleA, etc. But since your loop to read in from file only executed once, only the values in $vectorA, $angleA, ... , are initialized. It's the second time through those for loops that is causing the uninitialized variable errors.
You can solve this problem (only to see that it works) by adding this to the top of the script:
I really doubt that this is what you want to do to initialize these variables - it's simply what I did to test my hypothesis of what was wrong.
By the way, I added use strict; to the top of this script and got a whole bunch of errors. You might want to add that in and clean up a little before this script gets too unruly to deal with.
Skepticism is the source of knowledge as much as knowledge is the source of skepticism.