# Here is a version that will not break array 1 use strict; use warnings; my @array1 = (0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1); my @array2 = (0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1); print "@array1\n"; print "@array2\n"; my $i; my @result= map {int( ($_+$array2[$i++])/2 +.6)} @array1; print "@result\n";