@a = (1..3); # erstelle ein Array @a mit den Elementen 1,2,3
@b = (4..6); # erstelle ein Array @b mit den Elementen 4,5,6
@c = (7..9);# erstelle ein Array @b mit den Elementen 7,8,9
# gehe von 0 bis zum may Index von @a (hier: 2, da 3 Elemente in @a)
# map gibt ein Array zurück. zwischen den {} steht, wie die Elemente
# aussehen. Hier wird ein anonymes Array zurückgegeben, in dem die Elemente
# aus @a,@b,@c sind, die jeweils den gleichen Index haben.
# der aktuelle Index (0..$#a) steht in $_
# Hier wird eine Matrix aufgebaut:
# Bei Excel wäre es A0,B0,B2,A1,B1,C1,A3,B3,C3
@abc = map {[$a[$_], $b[$_], $c[$_]]} 0..$#a;
# ungefähre Langschreibweise:
# @abc;
# for(0..$#a){
# push(@abc,[$a[$_],$b[$_],$c[$_]]);
# }
# for-Schleife. $i ist der Schleifenzähler...
for ($i = 0, $i<$#a, ++$i) {
# gebe vom 1.Element (mit Index 0) von @abc, das i. Element aus (also A0,B0,C0);
print "$abc[0]->[$i]\n";
# das gleiche für's 2.Element (A1,B1,C1)
print "${$abc[1]}[$i]\n";
# und die letzte Zeile...
print "$abc[2][$i]\n"
}