use List::Util qw( shuffle ); my @arr = shuffle 0 .. 32; print join q{, }, @arr; print "\n"; __END__ 15, 27, 5, 11, 24, 19, 32, 13, 20, 17, 21, 16, 7, 0, 1, 26, 18, 6, 4, 2, 10, 30, 29, 31, 23, 25, 12, 3, 8, 9, 28, 22, 14