use List::Util qw/ reduce /; my $min_index = reduce { $array1[$a] <= $array1[$b] ? $a : $b } 0 .. $#array1; say <<"EOM"; min element: $array1[ $min_index ] min index: $min_index array2: $array2[ $min_index ] EOM