Below code will take array of any length and will give the desired output.
my @array1 = ('a','b','c','d');
my @array2 = (1,2,3,4);
my @array3 = ('x','y','z');
my @array4 = ('p','q','r','s','t','u');
my @array5 = ('l','m','n');
my @finalArray;
looping(\@array1,\@array2,\@array3,\@array4,\@array5);
sub looping
{
while (@_)
{
my $array = shift;
my $length = scalar @{$array} - 1;
for my $i (0 .. $length)
{
exists $finalArray[$i] ? ($finalArray[$i] = $finalArray[$i
+].${$array}[$i]) : ($finalArray[$i] = ${$array}[$i]);
}
}
}
print "$_\n" foreach(@finalArray);