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


in reply to Re^4: Convert matrix formats
in thread Convert matrix formats

Can you comment on this by which logic the first for conditions are set ( 0 .. $#lt -1 ) also the combination $# I have not encountered something like this what does it mean?

Absolutely. That's what this place is all about.

[ [1], [2, 3], [4, 5, 6], [7, 8, 9, 10] ]
### $#array is the highest index in @array. my $yMax = $#lt; ## $#{ ... } is the highest index in the array referenced by ... ## $array[ -1 ] is the last element in the @array ## So the following sets $xMax to highest index of the array (referenc +e) ## in the last element of @lt. Ie. The longest subarray. my $xMax = $#{ $lt[-1] }; ## Iterate through each the subarrays except the last which does need +padding for my $y ( 0 .. $yMax -1 ) { ## for $lt[ $y=0 ] ([1]), we need to add elements $y+1..$xMax ( +1..3) ## for $lt[ $y=1 ] ([2,3]), we need to add elements $y+1..$yMax ( +2..3) ## And the value we add at $lt[ $y ][ $x ] comes from $lt[ $x ][ $ +y ]. for my $x ( $y+1 .. $xMax ) push @{ $lt[ $y ] }, $lt[ $x ][ $y ]; } }

BTW: please use <code></code> tags when posting code snippets. That way they are readable :)


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.