Strange two dimensional array behaviour

Z

Zsolnai Csaba

This code is supposed to read in a 9x9 table (sudoku table) from a
simple text file. It then needs to write it out on the screen.

#read from file

def puzzle_beolvas fnev
f = File.new(fnev,"r")
puzzle = Array.new(9){[]}
for i in (1..9)
puzzle = Array.new(9)
end
i = 1

f.each do |sor|
j = 1
sor.each do |str|
puzzle[j] = str
j = j + 1
end
#print "\n"
i = i + 1
end
f.close

#Write out the 2 dimensional array

for i in (1..9)
for j in (1..9)
print puzzle[j]
print " "
end
print "\n"
end

end

#the program does this for every file, whose name is given as an
argument

ARGV.each do |a|
puzzle_beolvas a
end


So, the output should be something like this:

6 1 5 4 2 9 3 8 7
4 7 2 8 5 3 1 6 9
3 9 8 1 7 6 2 4 5
7 4 6 2 3 1 5 9 8
5 2 1 9 8 4 6 7 3
9 8 3 7 6 5 4 1 2
8 6 7 5 4 2 9 3 1
1 5 4 3 9 7 8 2 6
2 3 9 6 1 8 7 5 .

Instead, i get this:

6 1 5 4 2 9 3 8 7
nil nil nil nil nil nil nil nil
4 7 2 8 5 3 1 6 9
nil nil nil nil nil nil nil nil
3 9 8 1 7 6 2 4 5
nil nil nil nil nil nil nil nil
7 4 6 2 3 1 5 9 8
nil nil nil nil nil nil nil nil
5 2 1 9 8 4 6 7 3
nil nil nil nil nil nil nil nil
9 8 3 7 6 5 4 1 2
nil nil nil nil nil nil nil nil
8 6 7 5 4 2 9 3 1
nil nil nil nil nil nil nil nil
1 5 4 3 9 7 8 2 6
nil nil nil nil nil nil nil nil
2 3 9 6 1 8 7 5 .
nil nil nil nil nil nil nil nil
6 1 5 4 2 9 3 8 7



Any ideas, why ?
 
R

Rob Biedenharn

This code is supposed to read in a 9x9 table (sudoku table) from a
simple text file. It then needs to write it out on the screen.

#Write out the 2 dimensional array

for i in (1..9)
for j in (1..9)
print puzzle[j]
print " "
end
print "\n"
end

end

Any ideas, why ?
--


Arrays index from 0. A 9-element array has indexes from 0..8

-Rob

Rob Biedenharn http://agileconsultingllc.com
(e-mail address removed)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top