#!/usr/bin/env perl -w @array = (1..10); $r = \@array; @arr2 = @$r; foreach (@array){ $_ *= 2; } print " array: @array\nreference: @$r\n arr2: @arr2\n\n"; for ($i = 0; $i < @array; $i++){ $$r[$i] = $i * 10; } print " array: @array\nreference: @$r\n arr2: @arr2\n\n"; foreach (@arr2){ $_ += 5; } print " array: @array\nreference: @$r\n arr2: @arr2\n\n"; #!/usr/bin/env perl -w @ten = ('.') x 10; for ($i=0; $i<10; $i++){ my @new = @ten; push @TenByTen, \@new; } #Why can't I build the 2-d array like this? #@TenByTen = (\@ten) x 10; print "Full Array: @TenByTen\n"; for ($i = 0; $i < @TenByTen; $i++){ for ($j = 0; $j < @{$TenByTen[$i]}; $j++){ print "$TenByTen[$i][$j] "; } print "\n"; } print "\n\n"; for ($i=0; $i < @TenByTen; $i++){ for ($j=0; $j < @{$TenByTen[$i]}; $j++){ if ($i == $j or $i + $j == 9){ $TenByTen[$i][$j] = 'x'; } } } for ($i = 0; $i < @TenByTen; $i++){ for ($j = 0; $j < @{$TenByTen[$i]}; $j++){ print "$TenByTen[$i][$j] "; } print "\n"; }