in reply to Array of arrays

G'day SuzuBell,

Firstly, a few comments on your code (some of which may have already been addressed in other parts of this thread):

The code below (which includes sample input and output) shows how to create, manipulate and access the type of array data you appear to be working with. It addresses all the issues I raised. I'll leave you to adapt it to your specific requirements.

$ perl -Mstrict -Mwarnings -le ' use constant MAX_COLUMN_INDEX => 2; secondRoutine(firstRoutine()); sub firstRoutine{ my $matrix; while (<>) { my @fields = split; for (0 .. MAX_COLUMN_INDEX) { push @{$matrix->[$_]}, defined $fields[$_] ? $fields[$_] : "<undef>"; } } return $matrix; } sub secondRoutine { my $matrix = shift; for my $row (0 .. $#{$matrix->[0]}) { for my $col (0 .. MAX_COLUMN_INDEX) { print "Row $row Col $col = $matrix->[$col][$row]"; } } return; } ' q w e a s z Row 0 Col 0 = q Row 0 Col 1 = w Row 0 Col 2 = e Row 1 Col 0 = a Row 1 Col 1 = s Row 1 Col 2 = <undef> Row 2 Col 0 = z Row 2 Col 1 = <undef> Row 2 Col 2 = <undef>

-- Ken