Here's a solution using an array slice.
#!/usr/bin/env perl use 5.010; use strict; use warnings; use List::Util qw{shuffle}; my $array_elements = 60; # originally 600 my $random_elements = 3; # originally 10 my $no_of_arrays = 10; # originally 1000 my $norm_char = q{-}; my $rand_char = q{X}; my @all_strings = (); for (1 .. $no_of_arrays) { my @tmp_array = ($norm_char) x $array_elements; @tmp_array[(shuffle 0 .. $array_elements - 1)[0 .. $random_element +s - 1]] = ($rand_char) x $random_elements; push @all_strings => join q{} => @tmp_array; } map { say } @all_strings;
-- Ken
In reply to Re: Difficulty in randomization
by kcott
in thread Difficulty in randomization
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |