Sha256: c187d394351471ee28cbd8c8b289b47e4d295255ae6ce950c0ef9212f67e0959

Contents?: true

Size: 526 Bytes

Versions: 3

Compression:

Stored size: 526 Bytes

Contents

#!/usr/bin/perl
	###########
	# act.pl
	#########
	# scrambla i contenuti di un stdin, li rimescola a caso
	# fisher_yates_shuffle( \@array ) : generate a random permutation
	# of @array in place

sub fisher_yates_shuffle {
    my $array = shift;
    my $i;
    for ($i = @$array; --$i; ) {
        my $j = int rand ($i+1);
        next if $i == $j;
        @$array[$i,$j] = @$array[$j,$i];
    }
   return $array;
}

my @Astdin = 0;
my $i=0;
while (<>) { $Astdin[$i++] = $_; }
fisher_yates_shuffle(\@Astdin);
print @Astdin; 

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
sakuric-2.1.3 bin/act
sakuric-2.0.3 bin/act
sakuric-2.0.1 bin/act